home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr36 / famedemo.zip / FAMOUS.DOC < prev    next >
Text File  |  1994-07-06  |  129KB  |  3,053 lines

  1.              FAMOUS is Copyright (c) 1993, 1994 by John Schachat
  2.  
  3.  
  4.                        Documentation for FAMOUS 2.0
  5.                Facilitate All Management Of User Services
  6.                             By John Schachat
  7.  
  8.  
  9. Author's Note:
  10.  
  11. Congratulations!  You have just purchased the most powerful, flexible
  12. and reliable user manager EVER created for TBBS.  With FAMOUS you will
  13. find that you can do more with your system than you ever dreamed and
  14. find out more about your system and users than you ever knew before.
  15.  
  16. FAMOUS' flexibility allows many advanced features and capabilities.  The
  17. price you pay is that you MUST understand what it is capable of
  18. accomplishing in order to receive it's full benefit. Please take the
  19. time to read through the docs and experiment with it's capabilities.
  20. And, if you have any problems, or ideas/suggestions on how the
  21. application might be improved, please don't hesitate to leave me a
  22. message on the GWA board, or call my board at (408) 267-8734.
  23.  
  24. Thank you for purchasing FAMOUS!
  25.  
  26. John
  27.  
  28. Another Note:
  29.  
  30. As FAMOUS evolves, changes are continually made and new features added.
  31. These changes are documented in a history file called CHANGES.DOC which
  32. is included with every update, as well as in this package.  Whenever you
  33. receive an update, please take the time to read the CHANGES.DOC file.
  34. There is also a file called HINTS.TXT which is some of the accumulated
  35. wisdom from FAMOUS sysops.  HINTS will constantly be updated and
  36. included in each revision package. Feel free to send me your
  37. contributions for this file.
  38.  
  39.  
  40. Conventions:
  41. Anything enclosed in Square brackets [] is an Optional parameter
  42. Anything enclosed in Triangular brackets <> is a Mandatory parameter
  43. Anything separated by a Pipe | means OR.
  44.  
  45. These symbols (Brackets/Pipe) are never included in either the DOS
  46. command line or the TBBS Opt Data line!
  47.  
  48. So, if the choice was AGER <//F:60> [USA|UPDATE]
  49.  
  50. This tells us that the program name is AGER, that the //F:60 is a
  51. mandatory parameter and must be included in the command line. And that
  52. either USA or UPDATE may also be included in the command line since they
  53. are optional.
  54.  
  55. The actual DOS command could then be either:
  56.  
  57.  AGER //F:60
  58.  
  59.  OR
  60.  
  61.  AGER //F:60 USA
  62.  
  63.  OR
  64.  
  65.  AGER //F:60 UPDATE
  66.  
  67.  
  68. Installation:
  69.  
  70. Contained in the archive are a number of .TPG programs, one .EXE program
  71. used for your nightly event, one .EXE to convert data from other User
  72. Management programs and one .EXE program used to define labels and
  73. reports for offline printing, as well as a number of databases (.DBF)
  74. files used by the system.
  75.  
  76. To Install, create a separate subdirectory for your FAMOUS files, and
  77. place all the files in it. Like: C:\FAMOUS\.  Make sure that you keep it
  78. near the top of your disk so that more parameters can be held in the Opt
  79. Data line.  Remember that the TBBS Opt Data line can only pass 64
  80. characters including the path name.  In the FAMOUS directory, create a
  81. subdirectory call \INVOICE.  This will be used to store hard copies of
  82. all invoices.
  83.  
  84. In your CONFIG.SYS file, install the ANSI.SYS device driver if you plan
  85. to use the Console Alert Message Function.  Also make sure that your
  86. FILES= statement is set to AT LEAST 100.
  87.  
  88. If you are using a LAN and have SHARE installed, make sure that the /F
  89. parameter is set to AT LEAST 4096.  ESoft has reported that TBBS and
  90. share don't exactly hit it off and you may recieve sporadic error
  91. messages otherwise.  In some situations you may have to have the /F
  92. parameter as high as 8192.  Unfortunately it is purely trial and error
  93. to find the right setting.
  94.  
  95. It is highly recommended that the BBS system use a Disk Cache and
  96. a 386 or better CPU.  TBBS releases greater than 2.2 will, in fact,
  97. REQUIRE a 386 or better computer.
  98.  
  99. It is also a good idea to back up the .DBF files nightly, since these
  100. contain critical information that you can't afford to lose.
  101.  
  102. Program Modules
  103.  
  104. Don't be frightened becauses you see so many .TPG files.  Most of them
  105. are sub-modules which are called by the Main FAMOUS programs.  The only
  106. ones you actually HAVE to put into your SDL are:
  107.  
  108. FAMFAST  - LOGON/LOGOFF AUTOEXECUTE MODULE
  109. FAMSYSOP - SYSOP MODULE
  110.  
  111. Other modules which you may want to use are:
  112.  
  113. FAMUSER  - USER PROFILE REVISION MODULE
  114. FAMBUYER - ALLOWS USERS TO BUY SERVICES
  115. FAMCOSYS - COSYSOP MODULE. PROVIDES LIMITED ACCESS TO USER RECORDS.
  116. USERSTAT - ALLOWS USERS TO SEE VARIOUS SYSTEM STATS
  117. USERVIEW - ALLOWS USERS TO SEE VARIOUS USER STATS
  118. GIFT     - ALLOWS YOU TO USE THE MAIL CODE FEATURE
  119. FASTACCT - SHOWS NEW PURCHASES NEEDING AUTHORIZATION
  120. FASTOWED - SHOWS NEW BUSINESS
  121. FAMPASS2 - FORGOTTEN PASSWORD MODULE
  122. EXPCHNG  - INSERTS EXISTING USERLOG EXPIRATION DATE INTO FAMOUS
  123. FAMTABS  - PROVIDES TABS SUPPORT
  124. INVVIEW  - ALLOWS USER TO VIEW/RETRIEVE PAST INVOICES
  125.  
  126. SDL
  127.  
  128. I have included a sample SDL file called FAMOUS.SDL.  When compiled it
  129. will create a menu called MENUFAM.CTL.  This file contains sample
  130. entries for all the FAMOUS programs you will need to invoke.  The menu
  131. does not have any restrictions in it, so make sure that you do not make
  132. it available to your users.  It is just to give you an idea of how to
  133. call the various programs and lets you get going quickly.  In the SDL
  134. make sure that you modify the EQUATE statements and the RIP macro to
  135. reflect your system's configuration before compiling. The menu displays
  136. are also included and are named FAMDEM.ANS/ASC/TXT/RIP
  137.  
  138. In a nutshell, here is where FAMOUS' menu entries normally go in YOUR
  139. SDL:
  140.  
  141. *************************In Menu0000:*******************************
  142.  
  143. Entry: Mail Code Checking - Optional
  144. Key=^@
  145. Type=200
  146. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  147. Opt Data=C:\FAMOUS\GIFT /Q
  148. ; Optional parameters: None
  149.  
  150. Entry: FAMFAST Logon Routine
  151. Key=^@
  152. Type=200
  153. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  154. Opt Data=C:\FAMOUS\FAMFAST /Q && %BPS%   -%LOGGEDON%
  155. ; Optional parameters: -NC -NH -LOGOFF
  156.  
  157.  
  158. The entry below is used if you are using FAMOUS' ability to tell users
  159. that they have to use a two word name by using the -NH switch.  Like
  160. John Smith instead of Smithy.
  161.  
  162. In this case, new users would have A1(1) turned on if they successfully
  163. register in which case the type 45 doesn't activate.  If the No Handle
  164. function activates they will be forced to relogon and be sent back to
  165. the top of menu0000 where they will have to re-register via the Type 45.
  166.  
  167. Entry: Type 45 when -NH is used
  168. Key=^@
  169. Type=45
  170. Priv=0  A1=.------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  171. Opt Data=0000
  172. ; Optional parameters: None
  173.  
  174. These next two entries are optional and provide TABS support.
  175. See the TABS section for more information.
  176.  
  177. Entry: TABS
  178. Key=^@
  179. Type=200
  180. A1=X.......
  181. Priv=0
  182. Opt Data=C:\TABS\TABS /Q
  183.  
  184. Entry: FAMTABS
  185. Key=^@
  186. Type=200
  187. A1=X......X
  188. Priv=0
  189. Opt Data=C:\FAMOUS\FAMTABS /Q && TAB
  190.  
  191.  
  192. This entry will display users who have birthdays today to all callers.
  193. It is created during the nightly event <Optional Entry>
  194.  
  195. Entry: Display Today's Birthdays - Usually used as an autoexecute at logon
  196. Key=^@
  197. Type=1
  198. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  199. Opt Data=C:\FAMOUS\BDAY.TXT /NB/NBC
  200.  
  201.  
  202. These next 2 should be protected by Priv=255 so that only the Sysop sees
  203. them.
  204.  
  205. Entry: Fast Accounting. Only activates when purchases need to be authorized
  206. Key=^@
  207. Type=200
  208. Priv=255  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  209. Opt Data=C:\FAMOUS\FASTACCT /Q
  210. ; Optional parameters: None
  211.  
  212. Entry: Fast Owed. Only activates to show new purchases
  213. Key=^@
  214. Type=200
  215. Priv=255  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  216. Opt Data=C:\FAMOUS\FASTOWED /Q
  217. ; Optional parameters: None
  218.  
  219. These entries are normally followed by a type 35 command to switch
  220. control to your Normal top menu so that a user only hits Menu0000 as he
  221. first logs on to your system.
  222.  
  223. Entry: Type 35 to Top menu
  224. Key=^@
  225. Type=35
  226. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  227. Opt Data=MAIN
  228. ; Optional parameters: Name of your Main Menu
  229.  
  230. *********************In Your Sysop Menu:***************************
  231.  
  232. Entry: <1> FAMOUS Sysop Module
  233. Key=1
  234. Type=200
  235. Priv=255  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=X
  236. Opt Data=C:\FAMOUS\FAMSYSOP /Q
  237. ; Optional parameters: None
  238.  
  239.  
  240. *********************In Your Co-Sysop Menu:************************
  241.  
  242. Entry: <2> FAMOUS Co-Sysop Module
  243. Key=2
  244. Type=200
  245. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=X
  246. Opt Data=C:\FAMOUS\FAMCOSYS /Q && -NOPASS -NOCC
  247. ; Optional parameters:  -NOCC and/or -NOPASS
  248.  
  249.  
  250. ********************In User Accesssible Menus:*******************
  251.  
  252. Entry: <5> Revise your Profile
  253. Key=5
  254. Type=200
  255. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  256. Opt Data=C:\FAMOUS\FAMUSER /Q && -REVISE
  257.  
  258. Entry: <6> View Top 50 User Statistics
  259. Key=6
  260. Type=200
  261. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  262. Opt Data=C:\FAMOUS\USERVIEW /Q && 50 -UP -DOWN -CALLS -TIME
  263. ; Optional parameters: # of Users -UP  -DOWN -TIME -CALLS -USER
  264.  
  265. Entry: <7> View System Statistics
  266. Key=7
  267. Type=200
  268. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=X
  269. Opt Data=C:\FAMOUS\USERSTAT /Q
  270. ; Optional parameters:  -STAT  -TIME -AVGTIME
  271.  
  272. Entry: <8> View Your Personal Statistics
  273. Key=8
  274. Type=200
  275. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  276. Opt Data=C:\FAMOUS\USERVIEW /Q &&  -USER
  277. ; Optional parameters:  -UP  -DOWN -TIME -CALLS -USER
  278.  
  279. Entry: <9> Buy a Service or Product
  280. Key=9
  281. Type=200
  282. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  283. Opt Data=C:\FAMOUS\FAMBUYER /Q
  284. ; Optional parameters:  3 character category name
  285.  
  286. Entry: <B> Review/Download Past Invoices
  287. Key=B
  288. Type=200
  289. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  290. Opt Data=C:\FAMOUS\INVVIEW /Q
  291. ; Optional parameters:  None
  292.  
  293. Entry: <A> Forgotten Password Module
  294. Key=A
  295. Type=200
  296. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  297. Opt Data=C:\FAMOUS\FAMPASS2 /Q  && -MSG
  298. ; Optional parameters: -MSG -LOGOFF
  299.  
  300.  
  301. Note that the USERSTAT and USERVIEW modules have a number of different
  302. Switches which may be used.  This lets you have more SDL entries to show
  303. users different facets of your system or restrict them from seeing some
  304. of the entries.  You can also separate them more and have more menu
  305. entries so that each entry only calls one stat display.
  306.  
  307. *******************In your Final Logoff Menu:*******************
  308.  
  309. Entry: FAMFAST Logoff Routine
  310. Key=^@
  311. Type=200
  312. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  313. Opt Data=C:\FAMOUS\FAMFAST /Q && %BPS%  -LOGOFF
  314. ; Optional parameters: -NC -NH -LOGOFF
  315.  
  316. **********************************************************************
  317.  
  318. About your LOGOFF Menu:
  319.  
  320. I have found that it is much better to actually have 2 logoff menus which
  321. function similarly to your 2 top menus.
  322.  
  323. The first logoff menu would NOT contain a type 10 command.  It might
  324. have functions such as:
  325.  
  326. <S>end a Message to the Sysop
  327. <R>eturn to the Last Menu
  328. <G>o to the Main Menu
  329. <L>ogoff Immediately
  330.  
  331. These are all the normal commands you would expect except that
  332. <L>ogoff Immediately DOES NOT invoke a type 10 command.  Instead, it
  333. invokes a type 5 which immediately sends you to a secondary logoff menu.
  334.  
  335. On this secondary Logoff menu you would have 2 autoexecutes:
  336.  
  337. MENU: OFF2
  338.  
  339. Entry: FAMFAST Logoff Routine
  340. Key=^@
  341. Type=200
  342. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  343. Opt Data=C:\FAMOUS\FAMFAST /Q && %BPS%  -LOGOFF
  344. ; Optional parameters: -NC -NH -LOGOFF
  345.  
  346. Entry: Logoff System
  347. Key=^@
  348. Type=10
  349. Priv=0  A1=-------- A2=-------- A3=-------- A4=-------- IBM=- ANS=-
  350. Opt Data=
  351.  
  352. ENDMENU:
  353.  
  354. This is so the user never hits the FAMOUS logoff module until he REALLY
  355. is logging off your system.  It's not really a big deal, but it does
  356. insure that FAMFAST doesn't run until the user is REALLY logging off.
  357. You could even put in a customized Type 1 autoexecute within a final
  358. logoff menu. If you do this you may want to use the /NB/NBC/NK switches
  359. so that the message doesn't go against the users download bytes and they
  360. don't get the -Press Any Key- prompt.
  361.  
  362.  
  363. About the Programs:
  364.  
  365.  
  366. AGER.EXE - Performs all nightly aging, printing and maintenance
  367.            functions when run from your RUNBBS.BAT file. These
  368.            operations and their frequency are controlled by the online
  369.            Sysop module.  AGER is also able to update USERLOG.BBS with
  370.            the user's current parameters that you have entered into his
  371.            profile in the FAMOUS database.
  372.  
  373.   During it's operation, AGER opens up many files at a time.  Be sure
  374.   that your 'FILES='  Statement in Config.Sys is set to at least 100 for
  375.   proper operation.
  376.  
  377.   Before AGER is called in your .BAT file, make sure that you do a CD to
  378.   the FAMOUS directory.
  379.  
  380.   AGER always needs to have on it's command line //F:60 at the beginning,
  381.   in addition to any other parameters. This allows the program to grab
  382.   up to 60 DOS handles, which it needs in order to be able to open up
  383.   all the files it requires.  Each parameter must always be
  384.   separated by a single space.  You must also Change to the FAMOUS
  385.   directory prior to running AGER.
  386.  
  387.   Like:
  388.   CD C:\FAMOUS
  389.   AGER.EXE //F:60
  390.  
  391.   NOTE: It is important that AGER run BEFORE ULEDIT /U in your
  392.   RUNBBS.BAT file.  This is so it can find deleted users in the
  393.   userlog and delete them from the FAMOUS database before they are
  394.   permanently removed by ULEDIT.
  395.  
  396.   Important Note:  FAMGHOST MUST ALWAYS RUN AFTER AGER RUNS. This is to
  397.   guarantee index file compatibility.  I HAVE found differences between
  398.   Clipper-created index files and TDBS-created index files that can
  399.   cause sporadic errors under certain conditions. By running FAMGHOST,
  400.   you guarantee the integrity and compatibility of these files.  See the
  401.   Indexing section for more information on your index options.
  402.  
  403.   If this is a new installation, and there is no need for conversion, do
  404.   not run AGER prior to running the online TPG modules. Doing so will
  405.   result in an error message until the NDX files are built either by
  406.   FAMGHOST or FAMSYSOP.
  407.  
  408.  
  409. Operation as a Nightly Event:
  410.  
  411.   For normal operation, running as a nightly event, it requires no
  412.   command line parameters and would be run from your RUNBBS.BAT file as
  413.   AGER.EXE //F:60 [USA]. Note that the brackets are never included in a
  414.   FAMOUS command or Opt Data line.
  415.  
  416.   The parameter USA is used for the demographic reporting and will
  417.   disregard the country field when tallying zip code demographics.
  418.  
  419.  
  420. CONVERT.EXE
  421.         1. It can import mailing lists which are prepared as
  422.         comma-delimited text files.
  423.  
  424.         2. It can import user data from the TUIMS or UM databases into
  425.         FAMOUS.
  426.  
  427. Importing User Data from a Text File.
  428.  
  429.   CONVERT.EXE //F:60 <Path/Name of mailing list text file> [Delimiter]
  430.   [mailing list group]
  431.  
  432.   for example, if the list were comma/quote-delimited, it's name were
  433.   MAIL.TXT and you wanted imported users to be identified as coming from
  434.   the Frostbite mailing list you would run CONVERT as follows:
  435.  
  436.   CONVERT.EXE //F:60 MAIL.TXT " FrostBite
  437.  
  438.   In this case, that lone quote says that each field is comma delimited
  439.   and each field is encased with a double quote.
  440.  
  441.   like "John Schachat", "123 Maple Lane", "San Jose", "CA", "95124"
  442.   
  443.   or it could be like:
  444.  
  445.   John Schachat, 123 Maple Lane, San Jose, Ca, 95124
  446.  
  447.   even with the quote in the command line
  448.  
  449.  
  450.   The format of the information must always be:
  451.  
  452.   Full Name, Street Address, City, State, Zip
  453.  
  454.  
  455. Importing Data from UM or TUIMS
  456.  
  457.   When importing user data from UM or TUIMS, CONVERT will accept a
  458.   different set of command line parameters.
  459.  
  460.   CONVERT.EXE //F:60 <CONVERT> <UM2|UM3|TUIMS> <ENCRYPT|NOENCRYPT> <Path of
  461.   TUIMS|UM followed by a \>
  462.  
  463.   The keyword CONVERT identifies this as a conversion operation, next
  464.   you select either UM2, UM3 or TUIMS as the conversion source, you tell
  465.   CONVERT whether you wish to import/not import credit card numbers -
  466.   ENCRYPT will import them, NOENCRYPT won't, as they will be useless if
  467.   they have been encrypted since you won't be able to tell what they
  468.   are. The next time a user uses his credit card, however, this field
  469.   will be refreshed with the new credit card information. Finally enter
  470.   the DOS path, followed by a trailing \, where the UM/TUIMS databases
  471.   are located.
  472.  
  473.   Like:
  474.  
  475.   CONVERT.EXE //F:60 CONVERT UM3 NOENCRYPT C:\TBBS\UM\
  476.  
  477.   The Conversion operation will not affect the source databases in any
  478.   way.  Following conversion, it will be necessary to inspect the FAMOUS
  479.   databases, through FAMSYSOP, and make any editing changes that are
  480.   required. CONVERT does it's best to convert as much as possible, but
  481.   because there are significant differences between the operation of
  482.   FAMOUS and UM/TUIMS, not all items will come across completely.
  483.  
  484.   For a UM->FAMOUS conversion:
  485.  
  486.   1. Most user information is converted including the expiration date,
  487.   renewal date, etc.  Most remaining user information will be updated
  488.   and added to his record the next time he logs on.
  489.  
  490.   2. The Trash Can is completely converted.
  491.  
  492.   3. Checks/Deposits are completely converted.
  493.  
  494.   4. An attempt is made at converting Fee levels
  495.   into Services.  These need to be verified and edited.
  496.  
  497.  
  498.   For a TUIMS->FAMOUS conversion:
  499.  
  500.   1. Most user information is converted including the expiration date.
  501.   Most remaining user information will be updated and added to his
  502.   record the next time he logs on.
  503.  
  504.   2. The Trash Can is converted.  Any numeric field, i.e. 6969696 will be
  505.   assumed to be a credit card.  Any field which which contains alpha
  506.   information, i.e. Wang, is assumed to be a word or phrase.  Editing
  507.   may be required following conversion.
  508.  
  509.  
  510.   Conversion Notes:
  511.  
  512.   FAMOUS' conversion routines do a fairly good job of moving user
  513.   information from UM/TUIMS into the FAMOUS databases.  But there are
  514.   very big differences in the way FAMOUS uses services versus the way
  515.   other programs use fee levels. What this means is that while the
  516.   user's various privileges remain intact as well as his current
  517.   expiration date, etc.  FAMOUS will not have a service assigned to that
  518.   user designating his current level.  This is OK, but it means that
  519.   your reporting won't track your service levels.  There is, however,
  520.   a way around this.  You have the ability to batch assign services to
  521.   people based on their PRIV level.  Furthermore, you may specify that
  522.   the user's existing expiration date override and replace the service
  523.   expiration date as specified in the service definition.  For example,
  524.   Let's say you've just converted from another package.  In that
  525.   package you had 100 users who had bought your premium level.  You now
  526.   want to Flag them in FAMOUS, but not change anything else.  Here's
  527.   what you would do:
  528.  
  529.   1. Create a Service.
  530.   2. Give it a description, like Premium Service Level
  531.   3. Give it a Code like PRM
  532.   4. Make it Active, but do not make it available to your users as this
  533.      service won't really do anything.
  534.   5. Give it a Priv window from 0 to 255
  535.   6. You might want to have it go to another service when it expires, or
  536.      not.  This would allow you to display a file telling the user that
  537.      his subscription had expired or downgraded his privileges.
  538.   7. You probably will want to accept the rest of the defaults, as we
  539.      don't really want to change the user's capability.
  540.   8. When you're finished defining the service, go to the user
  541.      information screen and Batch assign the service.
  542.   9. Enter in the PRIV level for your Premium users, the service code,
  543.      PRM in this example, and elect to make the expiration date of the
  544.      service = your users' existing expiration dates.
  545.  
  546.   When it runs, FAMOUS will assign this dummy service to all premium
  547.   users.  The service expiration date will be equal to your users'
  548.   expiration dates, and you will be able to report, make labels, track,
  549.   etc. all the Premium users on your system.  The same strategy can be
  550.   used for your various other user groups as long as they have unique
  551.   Priv levels.
  552.  
  553.  Converting from a System with no previous User Management Software
  554.  
  555.  One of the  major difficulties that people have when converting from an
  556.  existing system with no user management software is what to do about
  557.  the expiration date in the TBBS Userlog.bbs.  Many people have used
  558.  this expiration date to expire users, even though it will permanently
  559.  lock that user out of their system when the expiration date is hit.
  560.  Something that is usually undesireable. With FAMOUS, you can expire
  561.  users without permanently removing them from your system.  But then you
  562.  have to change the TBBS expiration date to 00/00/00 so that TBBS
  563.  doesn't expire them before they actually get in.  To aid in this
  564.  process, I have included a small utility program call EXPCHNG.TPG.  You
  565.  do NOT need to use it, but if you do, please follow the set of
  566.  directions in the next three paragraphs.
  567.  
  568.  Make it an autoexecute that runs AFTER FAMFAST in your top menu.  It is
  569.  VERY Fast and virtually invisible and does not require any parameters
  570.  except /Q. It is even faster if the user DOES NOT have an expiration
  571.  date set in the TBBS userlog, i.e. 00/00/00 or has been converted
  572.  already. Which is where all your users will eventually end up. Works
  573.  like this:
  574.  
  575.     Entry: Main FAMOUS logon module
  576.     Key = ^@
  577.     Type = 200
  578.     Opt Data = C:\FAMOUS\FAMFAST /Q  && %BPS%    -%LOGGEDON%
  579.  
  580.     Entry: Converts TBBS Expiration Date
  581.     Key = ^@
  582.     Type = 200
  583.     Opt Data = C:\FAMOUS\EXPCHNG /Q
  584.  
  585.  This utility will look for users who have a value other than 00/00/00
  586.  in their TBBS expiration date field in Userlog.bbs.  If that value is
  587.  00/00/00, the program will immediately quit. Otherwise, it will find
  588.  them in the FAMOUS database and replace the FAMOUS expiration date with
  589.  the one that is in the Userlog. It will then replace the userlog value
  590.  with 00/00/00.
  591.  
  592.  If you leave this in for a few months, just guessing, the large bulk,
  593.  or maybe all, of your users will have their expiration dates converted.
  594.  All they have to do is hit it one time, at logon, and they're
  595.  converted.  This is NOT a batch program and only does the conversion
  596.  when a user logs in.  But it will get the job done painlessly and
  597.  without any manual intervention.
  598.  
  599. FAMFAST.TPG
  600.  
  601.     FAMFAST is the Logon/Logoff module.  FAMFAST will quickly determine
  602.     a user's status, update their records, check for RIP if you have it
  603.     turned on, Display the logon files, if they are present, and send
  604.     the user on his/her way.
  605.  
  606.     FAMFAST can use three optional switches which must be set up in a
  607.     specific way:
  608.  
  609.     %BPS% is ALWAYS the first Switch.
  610.  
  611.     -%LOGGEDON% is ALWAYS the last switch
  612.  
  613.     -NC, -NH are always in the middle and separated by 2 spaces from
  614.     %BPS% and -%LOGGEDON
  615.  
  616.     -LOGOFF is used only when FAMFAST is called at logoff.  When this
  617.     switch is used, the only other switch used is %BPS%.
  618.  
  619.     Switch meanings:  The only 2 switches that need to be discussed are
  620.     -NC and -NH.  The others pass logon data to FAMOUS.
  621.  
  622.     -NC prevents FAMOUS from collecting call information.  This has
  623.     several effects.
  624.  
  625.     1. Logons are slightly faster
  626.     2. Less Disk space is used
  627.     3. But Many of FAMOUS' statistics will not be available or accurate
  628.  
  629.     It is reccomended that you DO NOT use the -NC switch unless it is
  630.     absolutely necessary as you will lose a lot of valuable information.
  631.  
  632.     -NH prevents users with a priv less than 255 from using Single word
  633.     names (Handles).  If it is used, the FAMFAST entry should be
  634.     followed by a type 45 command that will return the user to the top
  635.     menu.  Like:
  636.  
  637.     Entry: Returns User to TOP menu if they failed the No Handle test
  638.     Key=^@
  639.     A1=.-------
  640.     TYPE=45
  641.     OPT DATA=0000
  642.  
  643.     In this example, FAMOUS is turning on the A1(1) flag if the user
  644.     successfully registers.
  645.  
  646.  
  647. For Normal Logon Operation:
  648.   Opt Data = C:\TBBS\FAMOUS\FAMFAST /Q && %BPS%   -%Loggedon%
  649.  
  650.   or for no Call Info Gathering:
  651.  
  652.   Opt Data = C:\TBBS\FAMOUS\FAMFAST /Q && %BPS%  -NC  -%Loggedon%
  653.  
  654.   or for no Call Info Gathering and no Handles:
  655.  
  656.   Opt Data = C:\TBBS\FAMOUS\FAMFAST /Q && %BPS%  -NC-NH  -%Loggedon%
  657.  
  658.   or for just no Handles:
  659.  
  660.   Opt Data = C:\TBBS\FAMOUS\FAMFAST /Q && %BPS%  -NH  -%Loggedon%
  661.  
  662.  
  663. For Logoff:
  664.   Opt Data = C:\TBBS\FAMOUS\FAMFAST /Q && %BPS%  -LOGOFF
  665.  
  666.  
  667. FAMUSER.TPG
  668.     This program is the interface for users to revise their profile.
  669.  
  670.     Put it in one of your user utility menus where a user can manually
  671.     revise his/her profile on demand.  Like:
  672.     
  673.     Entry: <R> Revise your User Profile
  674.     Key = R
  675.     Type = 200
  676.     Opt Data = C:\FAMOUS\FAMUSER /Q  && %BPS%  -REVISE
  677.  
  678.  
  679. FAMSYSOP.TPG
  680.  
  681.    This is the Sysop control module and should be placed in your Sysop
  682.    Menu where ONLY Sysops may access it.  It requires no additional
  683.    command line parameters and calls other program modules.  Like:
  684.  
  685.  
  686.    Entry: <F> FAMOUS User Management
  687.    Priv=255
  688.    Key = F
  689.    Type = 200
  690.    Opt Data = C:\FAMOUS\FAMSYSOP /Q
  691.  
  692.  
  693. FAMBUYER.TPG
  694.  
  695.    This is the module which allows users to purchase services you
  696.    define.  It requires no command line parameters and would normally be
  697.    placed in one of your user menus.  Like:
  698.  
  699.    Entry: <P> Purchase System Services
  700.    Key = P
  701.    Type = 200
  702.    Opt Data = C:\FAMOUS\FAMBUYER /Q && [3 character Category Name]
  703.     
  704.    The 3 character category name, which is matched with the one you have
  705.    entered into a service definition, is used in combination with an Opt
  706.    Data parameter in FAMBUYER to only display those services that match
  707.    the supplied Category.  For example, you could have subscription
  708.    services, file download services, Free Services, etc. Then you could
  709.    display a menu to your users with multiple Calls to FAMBUYER on it,
  710.    each identifying a specific category.
  711.  
  712.     If no category name is contained in the Opt Data line, the category
  713.     function is ignored and all services are displayed.
  714.  
  715.     This capability also lets you protect different service offerings
  716.     with FLAGS and PRIVs, via TBBS menu entries, as well as the
  717.     internal Priv Window in each service.
  718.  
  719.     The Opt Data line is Formatted like:
  720.  
  721.     Opt Data=C:\FAMOUS\FAMBUYER /Q && [3 Character Category Name]
  722.  
  723.     Examples:
  724.  
  725.     Entry: <S> Subscribe and become a Member
  726.     Key=S
  727.     Type=200
  728.     Priv=10
  729.     A1=X..-----
  730.     Opt Data=C:\FAMOUS\FAMBUYER /Q && SUB
  731.  
  732.     Entry: <F> Free Stuff
  733.     Key=F
  734.     Type=200
  735.     Priv=50
  736.     A1=X..----- A2=-------X
  737.     Opt Data=C:\FAMOUS\FAMBUYER /Q && FRE
  738.  
  739.     Entry: <B> Buy More Download Time
  740.     Key=B
  741.     Type=200
  742.     Priv=10
  743.     A1=X..-----
  744.     Opt Data=C:\FAMOUS\FAMBUYER /Q && FDL
  745.  
  746.     Entry: <V> View All Service Offerings
  747.     Key=V
  748.     Type=200
  749.     Priv=10
  750.     A1=X..-----
  751.     Opt Data=C:\FAMOUS\FAMBUYER /Q
  752.  
  753.  
  754. FAMGHOST.TPG
  755.  
  756.    This program may be run as a TBBS Ghost event or from a Sysop menu.
  757.    It's sole purpose is to reindex the FAMOUS database files. When it is
  758.    in use, you should be sure that no users are logging on/off of your
  759.    system or buying Services.  Otherwise they will encounter a system
  760.    Maintenance message and will be held until indexing is complete. They
  761.    Will not encounter an error condition, however. (See the Indexing
  762.    section for more information). It requires no command line
  763.    parameters.
  764.  
  765.    Entry: <R> Re-index FAMOUS Databases
  766.    Priv=255
  767.    Key = R
  768.    Type = 200
  769.    Opt Data = C:\FAMOUS\FAMGHOST /Q
  770.  
  771.    It is important that FAMGHOST ALWAYS runs as a ghost after AGER runs
  772.    during a nightly event. If you want FAMGHOST to always run
  773.    automatically every time your system comes up, add it as a TBBS ghost
  774.    event with a start time of 23:60.  During normal operation it will do
  775.    it's job very quickly.  This is the BEST way to do it and makes it
  776.    unnecessary to place it on a menu.  Just make sure that a GHOST line
  777.    is available for it to use and remember that TBBS only makes GHOST
  778.    lines available at the top of each minute after initial startup.  For
  779.    example: If you have 3 GHOST events trying to get to one line, and
  780.    each GHOST only takes 1 second to run, it will take 3 MINUTES for all
  781.    the GHOST events to actually be launched by TBBS, Not 3 SECONDS. With
  782.    this in mind, it is a good idea to make sure that FAMGHOST is the
  783.    first GHOST event in the queue since until it runs, users will not be
  784.    able to log on to your system.
  785.    
  786.  
  787. FASTACCT.TPG
  788.  
  789. Each time a user purchases a service either by check or credit card, an
  790. entry is made into the deposit register. You are able to view all new
  791. purchases, see their total dollar value, and expand the information
  792. concerning the purchase.  This expanded information includes the user's
  793. name, telephone number, etc. as well as the credit card info, if a
  794. credit card was used. Once the transaction is verified (you received the
  795. check or called the bank), you may press <V>erify, which will remove the
  796. item from the screen and subtract the appropriate amount from the
  797. Balance owed display.  The transaction is still stored and may be seen
  798. again by going directly into Deposits <C> on the main accounting menu.
  799. These deposit transactions may be periodically aged by configuring the
  800. check/deposit aging in the system configuration menu.  These functions
  801. are duplicated in the FAMSYSOP module in the accounting section.  This
  802. allows you to see new purchases, however, as soon as you log on.
  803.  
  804.    Entry: New Purchases
  805.    Priv = 255
  806.    Key = ^@
  807.    Type = 200
  808.    Opt Data = C:\FAMOUS\FASTACCT /Q
  809.  
  810.  
  811. FASTOWED.TPG
  812.  
  813. This module may be placed on a menu or used as an autoexecute.
  814. Functionally, it is identical to the balance owed register as it will
  815. only show new purchases which have not been marked as PAID.  It will
  816. allow you to do this, and authorize the service at the same time.  It
  817. will only show new cash transactions, not ones that have no dollar value
  818. assigned.  If there are no awaiting transactions, the module will quit
  819. immediately.
  820.  
  821. This module serves two important purposes.  First it lets you see how
  822. much money you've made since the last time you logged on (If you're
  823. marking items paid at each logon) and secondly it allows co-sysops to
  824. authorize new transactions without giving them access to the main FAMOUS
  825. sysop module.  When used together, FASTACCT and FASTOWED are a powerful
  826. combination. FASTACCT is strictly a service authorizer, whether it's
  827. been marked PAID or not, while FASTOWED is more concerned about your
  828. cash flow.  It is not necessary to use both.  For free systems, you
  829. might just want to use FASTACCT.  For STRICTLY pay systems you might
  830. just want to use FASTOWED.
  831.  
  832.  
  833. USERSTAT.TPG
  834.  
  835.    Also included is USERSTAT.TPG.  This is an optional ANSI-only module
  836.    you can make available to your users which allows them to view the
  837.    latest system statistics generated by AGER or from a Manual Snapshot.
  838.    It includes the same information that the Sysop would see if viewing
  839.    the System Stats, but will only show the most recent Snapshot of the
  840.    system taken.  It has zero impact on your system, as it does no
  841.    searching or computation, just display.  The three displays will show
  842.    a summary of system activity, a bar graph showing total system usage
  843.    vs. time of day, and another bar graph showing average system usage
  844.    over the the history of you call records.
  845.  
  846.    Entry: <V> View System Statistics
  847.    Priv = 0
  848.    Key = V
  849.    Type = 200
  850.    Opt Data = C:\FAMOUS\UserStat /Q && [-STAT -TIME -AVGTIME]
  851.  
  852.     Examples:
  853.  
  854.     Opt Data = C:\FAMOUS\USERSTAT /Q  && -STAT
  855.  
  856.     or
  857.  
  858.     Opt Data = C:\FAMOUS\USERSTAT /Q  && -STAT -TIME
  859.  
  860.     or
  861.  
  862.     Opt Data = C:\FAMOUS\USERSTAT /Q  && -TIME -AVGTIME
  863.  
  864.     And any other combination you want.  Or they can be used as separate
  865.     Type 200 menu calls.  If you do not use any switches, all three
  866.     functions will be displayed.
  867.  
  868.  
  869. USERVIEW.TPG
  870.  
  871. This is an optional program for ANSI and non-ANSI users which allows
  872. them to view Top Downloaders, Top Uploaders, Top number of Calls, Top
  873. amount of Time Online and their own personal Stats.  Invisible users are
  874. not displayed. USERVIEW uses 8 BANNER files to display header
  875. information on the display. Four are .ANS files for ANSI users and four
  876. are .TXT files for non-ANSI users. They are named BANNER1.XXX through
  877. BANNER4.XXX and may be customized.
  878.  
  879. The Opt Data line of the program will accept up to five parameters which
  880. will tell it what information to display.  If all parameters are there,
  881. the program will cycle through the five different displays.  Otherwise
  882. it will only show the ones that have been designated. You must have at
  883. least one of these parameters in the Opt Data line.
  884.  
  885.    Entry: <L> Look at Top Users
  886.    Priv = 0
  887.    Key = L
  888.    Type = 200
  889.    Opt Data = C:\FAMOUS\USERVIEW /Q && [# of Users] <-DOWN -UP -CALLS -TIME -USER>
  890.  
  891.    Example:
  892.  
  893.    Entry: <L> Look at Top 25 Downloaders
  894.    Priv = 0
  895.    Key = L
  896.    Type = 200
  897.    Opt Data = C:\FAMOUS\USERVIEW /Q && 25 -DOWN
  898.  
  899.    # of Users = The number of users to be displayed.  Must be the first
  900.    parameter. If left out, will default to 19.
  901.    -DOWN = Top Downloaders
  902.    -UP = Top Uploaders
  903.    -CALLS = Top Callers
  904.    -TIME = Top Time Online
  905.    -USER = Shows detailed Personal User Statistics for this user
  906.  
  907. Note: The stats displayed in USERVIEW are only updated to include new
  908. users after FAMGHOST runs.  Existing users are updated constantly. Since
  909. new users should always have less calls/time/downloads/etc., this should
  910. not be noticeable.  Personal stats are accurate as of this logon.
  911.  
  912.  
  913. FAMCOSYS.TPG
  914.  
  915.     This was specifically designed to allow co-sysops to verify/modify
  916.     user records.  It only allows the co-sysop to view/manage users who
  917.     have a Priv level less than or equal to their own.  It is
  918.     implemented by a standard Type 200 call with up to 2 additional
  919.     parameters. Like: Opt Data = C:\FAMOUS\FAMCOSYS /Q && [-NOCC]
  920.     [-NOPASS]
  921.  
  922.     An optional switch may be added to the Opt Data line which prevents
  923.     credit card information from being displayed. The switch is -NOCC.
  924.     To use it, you would configure the Opt Data line like:
  925.     Opt Data = C:\FAMOUS\FAMCOSYS /Q && -NOCC
  926.  
  927.     A second switch may also be added to the Opt Data line which
  928.     prevents the User's Password and alternate password from being
  929.     displayed.  The switch is -NOPASS.  To use it, you would configure
  930.     the Opt Data line like:
  931.     Opt Data = C:\FAMOUS\FAMCOSYS /Q && -NOPASS
  932.  
  933.     These switches (-NOCC -NOPASS) may be used together.
  934.  
  935. FAMPASS2.TPG
  936.  
  937.     At registration your callers may be asked to create a secondary
  938.     password. In the event that they forget their original password they
  939.     can log on to your system as a specific account name (PASSWORD for
  940.     example). FAMOUS will then ask them for their account or user name
  941.     and their secondary password. If they successfully match both they
  942.     will be given their original password and sent back through the
  943.     logon process.  The module is called FAMPASS2 and may be placed in
  944.     one of your utility menus, or in your top menu, where it is only
  945.     available to the special PASSWORD account.  When run, this module
  946.     displays a text file called PASS2.TXT, which may be modified by you,
  947.     before prompting the user for their primary name and secondary
  948.     password.
  949.  
  950.     Sometimes people will remember their primary password just by going
  951.     through the routine of being prompted for a password.  FAMPASS2
  952.     takes this into account and will recognize either the primary
  953.     password or the secondary password.  FAMPASS2 is called via a
  954.     standard type 200 command. like:
  955.     Opt Data = C:\FAMOUS\FAMPASS2 /Q  && [-LOGOFF] [-MSG]
  956.  
  957.     The optional -LOGOFF switch tells the program to logoff the user
  958.     after 3 unsuccessful attempts.
  959.  
  960.     The optional -MSG switch lets the user send a message to the Sysop
  961.     on the Email board defined in the FAMOUS configuration.
  962.  
  963.     The call to FAMPASS2 should be on your TOP menu (0000) since the
  964.     Type 43 relogon command which is invoked will leave the user on the
  965.     menu from which FAMPASS2 was called.  By placing it on your top
  966.     menu, the user will be forced to go through your normal logon
  967.     sequence as if they had just dialed into your system.
  968.     Alternately, you could have an autoexecuting Type 45 after FAMPASS2
  969.     which transfers control to Menu0000.
  970.  
  971.     You should also add a note to the initial signon message advising
  972.     users of your special password account. If you do not want to use
  973.     this feature, simply leave the field blank in the System
  974.     Config/Customize Registration Fields and Prompts area and the user
  975.     will not be prompted for it.  This feature will not be active until
  976.     this prompt is added.
  977.  
  978.     A word of caution about this feature. By using it, you may be
  979.     compromising some of your TBBS security since anyone can enter a
  980.     name and then try multiple passwords, just as if they were logging
  981.     on to your system.
  982.  
  983. Other TPGs
  984.  
  985.    You may notice that there are several other TPGs included with
  986.    FAMOUS.  They must all reside in the FAMOUS subdirectory and are
  987.    called by the FAMSYSOP module.  They do not require you to do
  988.    anything else, i.e. you DO NOT have to put them on menus.  However,
  989.    you may if you wish.  For example, if you want your users to be able
  990.    to view your line statistics, ANSI only, you could put LINEUSE.TPG as
  991.    a menu item.  No other parameters are required.  Or, if you wanted a
  992.    co-sysop to manage your accounting functions, but not be able to get
  993.    to the other functions in FAMSYSOP, you could put ACCOUNT.TPG as a
  994.    standalone menu item.  The same applies for SERVICE.TPG, if you want
  995.    a co-Sysop to manage your Service offerings or STAT.TPG if you want
  996.    co-Sysops to be able to view your Statistics.
  997.  
  998. Banner Files
  999.  
  1000. All of the user executable files display large font banners in ANSI or a
  1001. line of text in ascii, which identify the program's function to the
  1002. user.  FAMOUS comes with 12 of these files, 6 are .ANS and 6 are .TXT,
  1003. named BANNER1 through BANNER6.  These files may be customized by you for
  1004. your system.
  1005.  
  1006.  
  1007. FAMOUS Concepts and Overview
  1008.  
  1009. FAMOUS is a complete User Registration, Management and Services System
  1010. that embodies concepts which are revolutionary to the TBBS world. It is
  1011. designed to be as automatic as possible in nearly every respect, from
  1012. User Upgrading/Downgrading to invoice and report printing.  For a better
  1013. understanding of some of FAMOUS' capabilities, please read on.
  1014.  
  1015. Logon Registration - Whenever a new user logs on to your system, FAMOUS
  1016. will present the user with a registration screen for them to fill out.
  1017. You may modify this screen, and make specific fields mandatory/optional
  1018.  
  1019. User Services - FAMOUS allows you to package and sell Services to your
  1020. users.  A Service may be a file, flag/priv upgrading, billing class
  1021. time, Net Mail Credits, etc.  Services may be bundled together, i.e.
  1022. 100 NetMail Credits and 20 additional minutes per day of additional
  1023. online time or they may be sold individually, i.e. an additional 500K
  1024. bytes per day added to their download limit.  You can even specify a
  1025. service to run any TBBS command.
  1026.  
  1027. Services have the ability to cascade to each other after an expiration
  1028. time that you define or they may provide just a 1 time change to the
  1029. user's attributes.
  1030.  
  1031. Services may be defined as being 'Gifts'.  This allows one user to buy a
  1032. service for someone else.
  1033.  
  1034. Services may even be set to delete the user from the User databases
  1035. as well as the TBBS USERLOG.BBS on his next logon/logoff.
  1036.  
  1037. Services may be provided for free, sold for a price, or be automatically
  1038. invoked after a certain number of logons.  You may also set up a default
  1039. service which is automatically invoked on a new user logon and an
  1040. Expiration service which is automatically invoked when a user's
  1041. expiration date has expired.
  1042.  
  1043. Payment for services which are sold may be made by check or VISA,
  1044. MasterCard, American Express, Optima, Discover, Diner's Club or Carte
  1045. Blanche credit cards.  Credit Card numbers and expiration dates are
  1046. always validated and you define what types of payment you will accept.
  1047.  
  1048. You may define, on a service by service basis, what forms of payment
  1049. will be accepted.  You may also use a master switch in the system
  1050. configuration to determine what the entire system will accept.
  1051.  
  1052. Services may also be Forced or Removed for a particular user by the
  1053. Sysop.
  1054.  
  1055. Sales tax may be added to any service automatically.
  1056.  
  1057. Services may be authorized immediately/automatically, depending on
  1058. payment type or a waiting period may take effect, allowing you to check
  1059. a user's credit before the service actually begins.  The waiting period
  1060. may be set to automatically expire after X days from the purchase or it
  1061. may last up to 999 days or until the service is authorized by the Sysop.
  1062. After the waiting period expires, even if it has not been authorized,
  1063. the service is automatically given to the user on his next logon.
  1064.  
  1065. In a Service definition you have the ability to charge a flat rate for
  1066. billing class time OR set up a per minute fee and let the user decide
  1067. how much time he/she wants to buy.  To do this, set up the service as
  1068. you normally would for a billing class time sale, but instead of putting
  1069. in the actual Billing hours and minutes, put in the fee you will charge
  1070. per minute.  Also, leave the Price of the service blank.  If a user
  1071. purchases this service he will be prompted for the amount of time he
  1072. wishes to buy, allotted that time and billed accordingly.  If
  1073. appropriate, sales tax will also be computed according to what he has
  1074. purchased.
  1075.  
  1076. If you use this function there are 3 rules which must be followed:
  1077.  
  1078. 1. This service cannot be forced.  It must be purchased through
  1079.    FAMBUYER by the user.
  1080.  
  1081. 2. It must be enabled immediately.  You cannot use the Authorize
  1082.    Days. So you *might* want to limit it to credit card users.
  1083.  
  1084. 3. It cannot be a Gift Service.
  1085.  
  1086.  
  1087. User Management - FAMOUS allows you to track and modify most TBBS user
  1088. attributes including Flags and Privs, Time/Call/Download limits, Netmail
  1089. Credits, Billing class time, etc.  It is constantly gathering a wealth
  1090. of statistics which may be displayed and reported on. Users may be
  1091. searched based on their names, city, phone number, etc.  Mail may be
  1092. sent to a user from within a user's record and all information pertaining
  1093. to each user, from his last logon line and speed to the last mailing he
  1094. received, is kept within each user record.  User status, flags, etc. are
  1095. updated each time a user logs on or off your system.  You may also
  1096. instruct FAMOUS to force each user to review/update his profile every X
  1097. Days from the last update to insure current information.
  1098.  
  1099.  
  1100. RIP Detection - FAMOUS has automatic RIP detection, which you may turn
  1101. on/off.  When RIP is detected for any user logging on, you may instruct
  1102. FAMOUS to set/reset any combination of A(x) flags.  You may also instruct
  1103. FAMOUS to look at a flag which has been set by another program that has
  1104. already done the RIP detection.
  1105.  
  1106. If RIP is detected when a user logs on, the file FAMUSER.RIP will be
  1107. displayed. This is a RIP template file which will allow a RIP user to
  1108. either use his keyboard or a mouse to enter data.  This template is
  1109. organized as an ANSI window and a mouseable keyboard.  If the file
  1110. FAMUSER.RIP is not present in your FAMOUS directory, ANSI will continue
  1111. to be used for RIP users.  If it is present, the template will continue
  1112. to be displayed to the user throughout his online session unless a
  1113. specific RIP clear command is issued. This template is used anytime a
  1114. RIP user logs on, or if a RIP user is revising his profile.  Naturally,
  1115. if you want to get fancy, you can design your own RIP template and use
  1116. it instead of the supplied RIP files, and include various buttons, etc.
  1117. The file FAMUSER.RIP was generated specifically for FAMOUS by Randy
  1118. Harris and may not be used for any other purpose or distributed. If you
  1119. would like to contact Randy for any custom graphics work, he may be
  1120. reached by voice at 508-877-5433. For more information on RIP, see the
  1121. bottom of this file.
  1122.  
  1123.  
  1124. Reporting - FAMOUS has the ability to generate a wide variety of
  1125. reports based on User attributes, Services and their sales, or system
  1126. usage.  These reports may be sent to your screen, a disk file, or the
  1127. printer of your choice.  There are 2 forms of report writers in FAMOUS.
  1128. An online report writer which prints reports while your system is
  1129. active and a sophisticated offline report writer which allows you to
  1130. specify print jobs during the day which may then be printed while your
  1131. system is offline.  While the format of the online printing is
  1132. pre-defined, the offline Printing may be done with forms that you
  1133. design.  And any data field that is contained in a user's record may be
  1134. contained in the report and even totalled or separated by group.
  1135.  
  1136.  
  1137. Labels - As with the Report writers, the label writers allow you to
  1138. print labels online or to specify label print jobs which may be printed
  1139. offline.  For offline printing, separate printers may be specified for
  1140. Labels and invoices/reports.  And labels may be 1,2,3 across or Cheshire
  1141. styles. As with the offline report writer, you have complete control
  1142. over the information on each label. User information may also be output
  1143. to a DBF file and a comma delimited file for import into a word
  1144. processing program or spreadsheet.
  1145.  
  1146.  
  1147. Accounting Functions - FAMOUS has comprehensive accounting functions
  1148. which allow you to generate invoices and track billing.  FAMOUS accepts
  1149. multiple payment types on a transaction by transaction basis.  So a user
  1150. might use his VISA to pay for one service and a Diner's Club to pay for
  1151. another.  FAMOUS also incorporates an automatic balancing Check/Deposit
  1152. register.  Line item invoices may be printed online or during a nightly
  1153. event.  Output may be directed to a printer or disk file.  When invoices
  1154. are printed during a nightly even by AGER, they are automatically marked
  1155. as 'Processed'.  This removes the service from the Active area and
  1156. stores them into the Aged Services Database.  When printing from the
  1157. online sysop module, you have the option to mark them processed or not.
  1158. This allows you to print out test invoice or duplicates without
  1159. disrupting the normal processing cycle.
  1160.  
  1161. You may also manage the stored invoices from the Accounting module.
  1162. These functions allow you to View, Delete or Rolloff via age your hard
  1163. copy invoices which are stored in the INVOICES subdirectory.
  1164.  
  1165.  
  1166. System Statistics and Line Usage - FAMOUS constantly gathers and
  1167. processes statistical information which may be used to monitor your
  1168. system's usage.  These include a variety of reports which allow you to
  1169. see line usage, line usage by speed, line loading, line usage by time of
  1170. day and many, many more.
  1171.  
  1172.  
  1173. Aging - FAMOUS automatically ages, based on parameters that you set, the
  1174. user databases, call information databases, and the services databases.
  1175. Aged/Expired/Deleted users are automatically placed in a separate
  1176. database where they may be retrieved later and reinserted into the
  1177. Active Database.  All online reports and searching may be run on the
  1178. information in the aged databases as well as the active databases.
  1179. Services are aged as well and also kept in a separate Aged Database.
  1180. This database may also be reported on and searched.
  1181.  
  1182. Aging is a critical item as it allows you to manage the amount of disk
  1183. space that FAMOUS will use.  You should view aging as a way to have
  1184. FAMOUS clean it's own house every X days that you define.  If the house
  1185. gets dirtier quicker, clean it more often.  Set the aging times that are
  1186. right for you're system.  Busier systems may want to age more often, low
  1187. volume systems can age less often.
  1188.  
  1189. Mailing history - FAMOUS maintains a rolling list of the last 10
  1190. mailings that were sent to each user on a user by user basis.
  1191. Furthermore, when a new user logs on, you can have FAMOUS interrogate
  1192. him and check if he is responding to a mailing.  If so, pre-loaded
  1193. information will be automatically displayed for verification and a
  1194. mailing code will be added to his user record, identifying which mailing
  1195. the user responded to.
  1196.  
  1197. Console Alert Messages - FAMOUS is able to send messages directly to
  1198. your TBBS Console as important events occur, even if you are logged on
  1199. to it at the time. The messages will contain the type of event as well
  1200. as the user's name who is responsible for it. Console Messages will be
  1201. sent for the following events:
  1202.  
  1203.    A. A user has just purchased a pay service
  1204.    B. There has been a trash can violation
  1205.    C. A new user has just entered your system and registered
  1206.    D. A transaction has just been attempted with a bad credit card.
  1207.  
  1208. ANSI.SYS MUST be installed in your CONFIG.SYS file or this will not
  1209. operate properly. Therefore, in your Config.Sys file, you must have a
  1210. line equivalent to: Device=C:\DOS\ANSI.SYS
  1211.  
  1212. These messages will remain on the 25th line of the console until either
  1213. the screen blanks, you move from console mode to logon mode and back, or
  1214. you press an FKey which uses this line to display information (Like
  1215. Killing a line or taking a dump).  As new messages are received, they
  1216. will overwrite old messages.  To Enable/Disable this feature, a switch
  1217. is located in the first screen of the System Configuration.
  1218.  
  1219. These are some of the basic capabilities of FAMOUS, but there are many
  1220. more that you will soon discover as you begin to use the system.
  1221.  
  1222.  
  1223. Configuring FAMOUS
  1224.  
  1225. After you have installed the software, logon to your system and run the
  1226. FAMOUS management program, FAMSYSOP.  As you logon for the first time, you
  1227. may receive a file not found error message from FAMFAST.  This will be
  1228. remedied as soon as FAMSYSOP is run and the Index files are
  1229. automatically built.
  1230.  
  1231. The first thing you will want to do is to modify your FAMOUS
  1232. configuration.  Press <5> from the main menu and <1> from the
  1233. Configuration Menu.
  1234.  
  1235. Email Board is a board defined in CEDIT where mail will be sent when you
  1236. send mail to a user from within his record.  It is upper/lower case
  1237. sensitive and must be spelled correctly.
  1238.  
  1239. BBS lines for reports is the number of lines that you have on your
  1240. system and want FAMOUS to report on.
  1241.  
  1242. Send Alerts to Console turns On/Off the console alert feature
  1243.  
  1244. RIP Check will Poll the user's terminal emulator and determine if he is
  1245. using a RIP-capable terminal emulator.  If he is, the flags that you
  1246. have defined will be set in his user record. Options are (-), (.), (X).
  1247. Also, if RIP is detected and RIP Check is on, the user's ANSI flag in
  1248. the userlog will automatically be turned on.  This is a necessary step
  1249. for the TBBS implementation of RIP.
  1250.  
  1251. Display RIP if Flag lets you use a flag that another program has set
  1252. that determines if a user has RIP or not.
  1253.  
  1254. Set A(x) if Age allows you to set any flag depending on the user's age as
  1255. determined by the birthday they have entered.
  1256.  
  1257. Turn on a New User's Active Flag turns the user's Active flag on in
  1258. his user record.  The Active flag is used to keep users from being Aged
  1259. to the Aged User Database, regardless of the condition of the expiration
  1260. date.  It may be overridden by manually deleting a user or changing the
  1261. Flag to N.
  1262.  
  1263. Display Mail List Interrogation further prompts a new user and checks to
  1264. see if information for him has been pre-loaded into the user database.
  1265. If it has, it is displayed and the user is asked to edit/review it.  If
  1266. you are not looking for new users to respond to mailings, this option
  1267. should be turned off.
  1268.  
  1269. New user display is the name of a text file that is displayed to all new
  1270. users prior to the registration screen.  It may contain insertion
  1271. parameters.
  1272.  
  1273. New User Default service is the code of a service you wish users to have
  1274. assigned when they first logon.
  1275.  
  1276. Expiration Service is the service which will be invoked when a user
  1277. expires.  This will be in addition to any other services you have
  1278. designated the primary service to cascade to.  In many applications,
  1279. cascading will not be necessary as the Default expiration service will
  1280. provide the means necessary to downgrade user capabilities on
  1281. their next logon AFTER they have expired.  If you want to display a
  1282. message to users prior to expiration, you do no need to use a service to
  1283. do it.  See Expiration Messages for more information.
  1284.  
  1285. Have users check info is the number of days from the last time that
  1286. their user record was updated when you want them to re-verify their
  1287. registration info. A normal setting might be 6 months, 180 days.
  1288.  
  1289. Display File on Info check is a text file that will be displayed prior
  1290. to the user having to re-verify their profile.  Insertion parameters are
  1291. allowed.
  1292.  
  1293. Display File on Trash check is a text file that will be displayed when a
  1294. user has entered information on the registration screen which is also
  1295. contained in the Trash Can.  This file will be displayed before the user
  1296. is logged off.  Insertion parameters are allowed.
  1297.  
  1298. Display File on Birthday is a file that will be displayed when a user
  1299. logs on on his birthday, if you are requesting Birthday information in
  1300. the user registration.
  1301.  
  1302. Online print on LPT1-4 is the printer where FAMOUS output is to be
  1303. directed.
  1304.  
  1305. Name to appear on Invoices is the name of your BBS that will appear at
  1306. the top of all printed invoices.
  1307.  
  1308. Payment types accepted is the type of payments you will accept when
  1309. services are purchased.
  1310.  
  1311. Characters for $ is a 2 character field which allows you to specify the
  1312. characters users will see when they purchase services.  In the U.S. this
  1313. would usually be $, in Germany DM, etc.
  1314.  
  1315. Sales Tax is a master setting for your sales tax collection.  Enter the
  1316. % amount that you will collect and the applicable state you will collect
  1317. from.  If you want to collect from all users, enter XX as the state.
  1318. This is also specified and may be overridden in each service definition.
  1319.  
  1320. Date type is the type of date format your system uses.
  1321.  
  1322. Now press <2> to instruct FAMOUS on how to Age it's databases:
  1323.  
  1324. Nightly Event Database Maintenance:
  1325.  
  1326. You may specify the frequency of aging for the main databases.
  1327.  
  1328. For the Userlog, users are aged X days after their expiration date has
  1329. passed, if their ACTIVE flag is set to 'N', and are put into the aged
  1330. database.  Any user that has been deleted from the active database is
  1331. put into the aged database every time AGER is run.
  1332.  
  1333. The information about Userlog synchronization has been explained earlier
  1334. in this doc. More detailed information is also presented at the end.
  1335.  
  1336. You may also instruct to permanently delete users from the Aged database
  1337. n days after their last logon.  This allows you to 'stage' the aging
  1338. process so that they are first moved into the Aged database n days after
  1339. they expire and then permanently removed from the aged database n days
  1340. after their last call.
  1341.  
  1342. For Services, aged services are aged and put into the aged database
  1343. whenever they have expired or have been deleted.
  1344.  
  1345. For Call info, Call statistics are aged every X days after the call.
  1346.  
  1347. Aging checks and deposits removes them from the registers n days after
  1348. the transaction
  1349.  
  1350. Packing Databases can be done every X days or never.
  1351.  
  1352.  
  1353. Now Press <3> to configure off line printing:
  1354.  
  1355. Nightly Event Printing:
  1356.  
  1357. For offline printing, determine which printer(s) will be used for label
  1358. and report writing or if the output is to be sent to a disk file.
  1359.  
  1360. Also determine if you want reports, invoices and/or stats printed during
  1361. the nightly event.
  1362.  
  1363. If you decide to do nightly printing to a printer, make sure that the
  1364. printer is turned on and connected.
  1365.  
  1366.  
  1367. The next area to configure is online printing.
  1368.  
  1369. First we will look at the Label Configuration.  From the Main Menu,
  1370. press <3>, then press <8>.  These are the parameters that will be used
  1371. when printing online labels:
  1372.  
  1373. Label width is the maximum amount of data the label can hold
  1374. horizontally.
  1375.  
  1376. Top Margin is how many lines from the top of a page of labels do you
  1377. want to space.
  1378.  
  1379. Left Margin is how many spaces from the left side of the page do you
  1380. want to space.
  1381.  
  1382. Lines between Labels is the spacing between each label on the page.
  1383.  
  1384. Labels down the page is how many labels to print before an eject is
  1385. issued to the printer.  A value of 0 will print labels continuously
  1386. without an eject.
  1387.  
  1388. The next area to configure is for Invoice Printing:
  1389.  
  1390. From the main menu, press <A>, then <2>, and finally <3>.
  1391.  
  1392. Address lines will appear on the right side of the invoice and are
  1393. typically the name/address that you want payments remitted to.
  1394.  
  1395.  
  1396. The header that you define will appear directly above the first invoice
  1397. item.
  1398.  
  1399. After you complete these definitions, you should press <4> from the
  1400. INVOICING menu to disable processing and print an invoice out for a user
  1401. as a test.  If your printer is off or disabled, the invoice will only be
  1402. printed to the screen.
  1403.  
  1404. The second phase of configuring the system is to develop/modify report
  1405. forms and label forms for the offline label/report writers.  Each
  1406. definition you create can be specified in a print job so that you can
  1407. have reports/labels with different information in them.  This is more
  1408. important for reports than labels.  You define offline labels and
  1409. reports using FAMRL.EXE.  More on this utility later.
  1410.  
  1411. You will also want to configure the registration prompts that your
  1412. users will see. You are able to change the wording of any of the fields
  1413. that the user will see.  If you leave a field blank, that information
  1414. will not be requested at all.  You may also make a field mandatory or
  1415. optional for the user to fill in.  All fields are character oriented and
  1416. will accept any information EXCEPT for the Birthday field, which will
  1417. only accept a Date, and the Phone number fields which will follow the
  1418. rules of the mask you define.
  1419.  
  1420. The phone number mask allows you to format the field for the input of a
  1421. phone number.  DO NOT LEAVE IT BLANK!  If you want free text formatting,
  1422. place all X's in the Mask.  Simply put, the mask will only allow the
  1423. user to modify a character position that is occupied either by an X or a
  1424. 9. An X will allow the input of any alphanumeric character, a 9 will
  1425. only allow a digit to be entered.  Any other character will be displayed
  1426. and will not be modifiable, including a space.  For example, a mask of
  1427. (999) 999-9999 will display the parenthesis, the space between the area
  1428. code and the prefix, and the - between the prefix and the extension.  It
  1429. will force the user to enter an area code.  If you didn't want to force
  1430. the area code you could make the mask (XXX) 999-9999.  This would allow
  1431. the area code to be blank, but force the user to enter digits for the
  1432. rest of the field.
  1433.  
  1434. The alternate password field is special.  If it is used, the user may
  1435. retrieve his primary password, if forgotten, by accessing the forgotten
  1436. password module, entering his normal logon name, and then entering his
  1437. alternate password.
  1438.  
  1439. Finally, you should configure the registration questions that your users
  1440. will be asked.  This is invoked from the System Config menu <7>.  You
  1441. may change any category name, and enter any number of questions, up to
  1442. 10, per category.  You may also make each question mandatory or
  1443. optional.
  1444.  
  1445.  
  1446. Using FAMOUS
  1447.  
  1448. FAMOUS was designed to be relatively easy to use and intuitive as well
  1449. as extremely powerful and flexible.  With this in mind, the main
  1450. functions will be discussed as well as those that AREN'T so intuitive
  1451. rather than a detailed description of each and every field.
  1452.  
  1453. Expiration Dates and Aging
  1454.  
  1455. Users on your system may have expiration dates assigned to them  via a
  1456. service which may be purchased, bought or assigned by you.  FAMOUS uses
  1457. these dates to determine when a user record should be moved to the aged
  1458. database during a nightly event.  The expiration date works in
  1459. conjunction with the Active flag, i.e. a User who has his Active flag
  1460. set to Y, but has expired, will not be moved to the aged database.  So,
  1461. he will not have to re-register.  Furthermore, in the system
  1462. configuration, you determine how long an expired user will remain in the
  1463. active database prior to the active flag being checked.  For example, if
  1464. a user expired 20 days ago, you have the active flag = N, but aging is
  1465. set for 30, he will not be aged.  Via Service cascading you may have
  1466. lowered his privilege levels, but he will not be Aged.  On the 30th day
  1467. after he has expired, however, he will be aged and will have to
  1468. re-register as a new user to gain access to your system unless the
  1469. ACTIVE flag still = "Y". The state of the Active flag may be changed at
  1470. any time, either manually or via a Service.  Users who show as deleted
  1471. are automatically move to the Aged database regardless of their
  1472. expiration date or ACTIVE flag.
  1473.  
  1474. Expiration Messages
  1475.  
  1476. FAMOUS has the ability to display different expiration messages,
  1477. depending on the number of days a user has left before he expires.  This
  1478. is done automatically and no configuration options need to be set.  All
  1479. you need to do is to create files named 'EXP' + <number of days till
  1480. expiration> + '.TXT'.  For example, the file EXP10.TXT will be displayed
  1481. to a user if he has 10 days left till he expires, EXP5.TXT will be
  1482. displayed to a user if he has 5 days left till he expires, EXP4.TXT will
  1483. be displayed to a user if he has 4 days left till he expires, and so on.
  1484. There is no limit to the number of expiration display files you may
  1485. have, and they may trigger on any date. Only the file that exactly
  1486. matches the number of days left, however, will be displayed.
  1487.  
  1488. Renewals
  1489.  
  1490. If a user renews a subscription, depending on how you define the
  1491. service, the length of the subscription will be added to the existing
  1492. expiration date.  You may also configure the expiration date so that it
  1493. is reset to the service purchase date plus n days.  So, if a user has a
  1494. 6 month subscription and has only used 5 months of it and then renews
  1495. for a another 6 months.  He will wind up with a 7 month subscription.
  1496. Or, using the second method, he could be set to start just a 6 month
  1497. subscription beginning at the purchase date. By using the PRIV windows
  1498. within the services and the service length, you can extend a user's
  1499. expiration date to reflect 7 months before expiration, yet only give him
  1500. 6 months of the new service.
  1501.  
  1502. Service Lengths and Cascading
  1503.  
  1504. Each Service that you define can be invoked as a one time event, a new
  1505. user logon, for example, or be set to last for a set period of time and
  1506. then invoke another service.  For example, let's say that you have a 6
  1507. month subscription service.  After 5 1/2 months you want to remind users
  1508. that their service will expire soon.  After 6 months and one day, you
  1509. wish to revert them to a lesser privilege level.  Finally, after 7
  1510. months you wish to delete them from your system entirely.  You would set
  1511. up services as follows:
  1512.  
  1513.     1. A 5 1/2 month subscription service which provides for the additional
  1514.     capabilities you desire.  At the end of which, it invokes:
  1515.  
  1516.     2. A simple service which does not change the user's settings but
  1517.     displays a file telling them that their subscription will expire
  1518.     soon.  It, in turn, invokes another service, after 2 weeks or X
  1519.     logons, that reverts the user back to a New User level.  Finally,
  1520.     one month later, the last service is invoked which:
  1521.  
  1522.     3. Deletes the user from the Active Database and TBBS userlog, set
  1523.     his active flag to N, which means he will now be aged,lowers his
  1524.     priv levels, or just displays a final file the next time he logs on.
  1525.  
  1526.     You'll need to take some time and think about it <grin>. Since you
  1527.     aren't forced into any particular course of action by FAMOUS, it
  1528.     will do exactly what you tell it to do.
  1529.  
  1530.     A simpler way to accomplish this same task would be to NOT use any
  1531.     cascading and let FAMOUS do it for you with it's automatic cascade
  1532.     to the expiration service.  In this case, the service length on the
  1533.     subscription service would be set to 0, the Go to Code field would
  1534.     be left blank, and the expiration date would be the key element used
  1535.     by the system to trigger events.  As the user got closer to his
  1536.     expiration date, FAMOUS would automatically begin displaying the
  1537.     EXPn.TXT files. Finally, when the expiration date had passed, FAMOUS
  1538.     would automatically assign the automatic Expiration Service that you
  1539.     had defined.
  1540.  
  1541.  
  1542. Service PRIV Windows
  1543.  
  1544. Each Service may be configured with a privilege window that only allows
  1545. users within the window to purchase that service.  For example, if you
  1546. have a user with a Priv of 50, you wouldn't want him to purchase a
  1547. service which would downgrade him to a Priv of 30.  The window has an
  1548. upper and lower threshold, and only users within the window will be
  1549. assigned that service,
  1550.  
  1551.  
  1552. Services that delete other Services
  1553.  
  1554. A service is also able to override and delete any other services which
  1555. are waiting to cascade.  For example, let's say you have a new user
  1556. service, DEF, which gives a new caller access for 3 days.  On the second
  1557. day, this user buys a membership service.  This membership service is
  1558. now able to delete the DEF service before it can activate.
  1559.  
  1560.  
  1561. Service Information Files
  1562.  
  1563. FAMBUYER has the ability to display a different text file for each
  1564. service as <M>ore Info.  This file would typically explain what the
  1565. service does for the user and why he should purchase it.  This file is
  1566. defined in the Sysop Service definition area and may be unique for each
  1567. service.
  1568.  
  1569.  
  1570. Service Lengths and Expiration Dates
  1571.  
  1572. These two items are completely independent from each other, or may be
  1573. set to coincide.  At the end of a service length, that service will
  1574. expire and be aged.  Unless another service is set to Go to,
  1575. however, nothing else will occur. If you just want a user to expire at
  1576. the end of a time period, with no change in his Active flag, or anything
  1577. else, it is not necessary to set a Service length.  Just set the new
  1578. expiration date/days to the desired date/number.
  1579.  
  1580.  
  1581. Expiring services which aren't Picked up
  1582.  
  1583. In the Service Definiton there is a field which allows you to specify
  1584. how long the service will wait for the user before it disappears.  Let's
  1585. say you assign a service to a user, and he never logs in again to pick
  1586. it up.  That service could hang around in the database forever. You
  1587. can put a time limit on it so that after X days, if it hasn't been
  1588. picked up yet, it will be aged and AGER will delete it.
  1589.  
  1590.  
  1591. Forcing Services
  1592.  
  1593. The Sysop may force a service on any user or on any group of users based
  1594. on Priv Level.  Both are accomplished through the user information
  1595. system.  Forcing a service on a group can serve many purposes, such as
  1596. upgrading/downgrading them or just displaying a bulletin.  Forcing a
  1597. service on an individual user is accomplished when viewing the second
  1598. screen of an individual user's information record. The service that is
  1599. forced will not take effect until the next time the user(s) logs on or,
  1600. if he is online when the service is forced, when he logs off.
  1601.  
  1602. TABS Support
  1603. The way this works is as follows.  In your SDL, you would put the
  1604. TABS program immediately following FAMFAST.  It would be protected
  1605. by a flag so that only unregistered users would hit it.  After
  1606. filling out their FAMOUS registration screen, the TABS module would
  1607. be invoked as an autoexecute.  If they entered the correct ID
  1608. number, the TABS module would be configured to trip a flag.
  1609. Following the TABS module, you would put FAMTABS, protected by the
  1610. flag that TABS just tripped. This flag says that TABS has detected a
  1611. user who paid for the TABS service and is authorized.  In the
  1612. FAMTABS Opt Data line, you would put the name of the service to be
  1613. invoked.  Like: Opt Data=C:\FAMOUS\FAMTABS /Q && TAB
  1614.  
  1615. FAMTABS will then run and provide the user with that service.  So
  1616. the whole thing would look like this:
  1617.  
  1618. Menu:0000
  1619. Entry: Famous Logon
  1620. Key=^@
  1621. Type=200
  1622. Priv=0
  1623. Opt Data=C:\FAMOUS\FamFast /Q && %BPS%   -%Loggedon%
  1624.  
  1625.  
  1626. Entry: Go to real top menu for existing TABS users
  1627. Key=^@
  1628. A1=X......X
  1629. Priv=0
  1630. Type=35
  1631. Opt Data=TOP
  1632.  
  1633. Entry: TABS
  1634. Key=^@
  1635. Type=200
  1636. A1=X.......
  1637. Priv=0
  1638. Opt Data=C:\TABS\TABS /Q
  1639.  
  1640. Entry: FAMTABS
  1641. Key=^@
  1642. Type=200
  1643. A1=X......X
  1644. Priv=0
  1645. Opt Data=C:\FAMOUS\FAMTABS /Q && TAB
  1646.  
  1647. Entry: Go to real top menu
  1648. Key=^@
  1649. Type=35
  1650. Priv=0
  1651. Opt Data=TOP
  1652.  
  1653. EndMenu:
  1654.  
  1655. In this example, TABS is tripping A1(8) to indicate that the user
  1656. has provided a correct TABS ID number.  That, in turn, allows
  1657. FAMTABS to execute and provides him with the appropriate service.
  1658. In this case, the service named TAB.
  1659.  
  1660. Notice the 2 Type 35s.  The first one will trip for someone who has
  1661. already passed through the TABS program successfully.  If not, they
  1662. will be sent through the TABS module again.
  1663.  
  1664. Instead of an autoexecute, or in addition to it, you could also
  1665. place the TABS/FAMTABS combination in a menu, using TABS as a menu
  1666. pick for manual registration, followed by FAMTABS as an autoexecute.
  1667. This would let existing users access it as well as new users.
  1668.  
  1669. A third method would be to include the TABS program as part of your
  1670. Default Logon Service for new users instead of the autoexecuting
  1671. TABS entry.  This would still require FAMTABS as an autoexecute,
  1672. however.
  1673.  
  1674. The Trash Can
  1675.  
  1676. The Trash Can is a way for you to weed out bad credit cards, telephone
  1677. numbers, Names, words or phrases.  When a user registers, the
  1678. information he enters is checked for any word/phrase that is in the
  1679. Trash Can and is contained in his logon name, real name, street, city,
  1680. state, or Zip. The same applies to phone numbers. If there is a match, a
  1681. file will be displayed, as defined in the system configuration, and the
  1682. user will be immediately logged off.  Note that this is a 'Contains'
  1683. search.  So, if you put JERK in the trashcan, a match will be made on
  1684. Joe Jerk or on Joe Myjerkowski.
  1685.  
  1686. It is also possible to more selectively trap 976 or 900 phone
  1687. numbers (or anything else).  This will usually require 2 entries.
  1688. This is made possible by entering a ~ after the number. Like 976~.
  1689. What this does is to force the search to look for a space after the
  1690. 976. This would find numbers like '976 1234'. You could then add a
  1691. second trash can entry like 976- which would search for numbers like
  1692. '976-1234'.
  1693.  
  1694. This new feature lets you find these numbers WITHOUT finding
  1695. embedded numbers like '267-1976' (note that 976 in 267-1976 is not
  1696. followed by a space or preceeded by a dash and therefore wouldn't be
  1697. trashed). This feature will work for any of the phone number entry
  1698. fields.
  1699.  
  1700. Credit card checking is only done when a user attempts to purchase a
  1701. service.  If a match is made between the Trash Can and a credit card
  1702. number that the user has entered, a message is displayed that the system
  1703. does not accept that credit card and the purchase is cancelled.  The
  1704. user is not logged off the system.  A log file is kept of all credit
  1705. card purchases that fail, whether by a bad card number, expired card
  1706. date, or if a card was found in the Trash Can.
  1707.  
  1708.  
  1709. Credit Card Verification QAL
  1710.  
  1711. The actual Credit Card checking is done via a QAL, CREDIT.QAL.  You may
  1712. configure this QAL to display additional information, and modify the
  1713. type of credit cards that your system will accept. (See the QAL section
  1714. of your TBBS manual for more info).  DO NOT MODIFY ANY OF THE PUTSVY
  1715. STATEMENTS AND DO NOT ADD ANYTHING THAT WILL BE WRITTEN TO THE .SVY
  1716. FILE.  THE ONLY THINGS THAT ARE PERMISSIBLE TO MODIFY IN THE QAL IS
  1717. DISPLAY INFORMATION AND CREDIT CARD TYPES.  Following any modification,
  1718. you will need to recompile the QAL.  The resulting QAF must always be
  1719. named CREDIT.QAF and reside in the FAMOUS directory.
  1720.  
  1721. The following statement in the QAL should be modified to reflect what
  1722. type of credit cards will be accepted.  The CARD= statement tells the
  1723. QAL which cards to accept.  For example, if CARD=VM, then you will only
  1724. accept Visa and MasterCard.
  1725.  
  1726. VAR = C Type=CARD CARD=VMADBC NAME=A ERROR=Badcc
  1727.  
  1728.  
  1729. Info Checking
  1730.  
  1731. You have the ability to force a user to review his registration
  1732. information every X days.  This is configured in the System
  1733. Configuration menu, as is a text file that will be displayed prior to
  1734. the registration screen appearing.  Typically, you might want to set
  1735. this for 180 days, 6 months.  When it is reviewed, the last updated date
  1736. in his information will be updated.  You may also force this to happen
  1737. by setting the Force Revise flag in a user's record or through Tagging
  1738. functions.
  1739.  
  1740.  
  1741. Mail Codes
  1742.  
  1743. You have the ability to assign codes into a user's record.  This is
  1744. accomplished through tagging functions or by manually editing a user's
  1745. record.  With Tagging, you can assign a specific code to all TAGGED
  1746. users or have the system generate semi random codes which are unique for
  1747. all TAGGED users.
  1748.  
  1749. Once codes are assigned, they can be printed/output through the online mailing
  1750. label generator.
  1751.  
  1752. Next, you create a Registration service.  If you are using a code which
  1753. is the same for all users, enter that code and point it at a service.
  1754. If you are letting the system generate semi-random codes, enter the word
  1755. RANDOM as the Access ID, and point it at a service.  You can do both at
  1756. the same time and have as many Group Codes as you want.  There can only
  1757. be one RANDOM code, however, and it may only be used for this function.
  1758. RANDOM is a reserved word.
  1759.  
  1760. Install the program GIFT.TPG as an autoexecute PRIOR to FAMFAST in your
  1761. logon routine in menu0000.
  1762.  
  1763. How it works:
  1764.  
  1765. GIFT will check the user's record to see if there is a code in his Mail
  1766. Code field.  If there is, it will display a text file called Gift.Txt
  1767. and request the user's Mail Code.
  1768.  
  1769. When the user enters the code, Gift will first check to see if there is
  1770. an Access ID code with that designation.  If there is, it will be queued
  1771. for delivery, which will occur as the user passes through FAMFAST.
  1772.  
  1773. If there is no Registration service with that code, GIFT will compare it
  1774. to the code in the user's record.  If there is a match, the registration
  1775. ID RANDOM will be applied.  Again, you can only have one ID named RANDOM.
  1776.  
  1777. Once either has been applied, the mail code will be removed from the
  1778. user's record so that GIFT will be skipped over on the next logon.
  1779.  
  1780. GIFT is an extremely FAST autoexecute and will integrate seamlessly with
  1781. the rest of your system and with FAMOUS.
  1782.  
  1783. Note that GIFT will only work with users who have already registered
  1784. with FAMOUS.
  1785.  
  1786. GIFT-assigned services are not pay services and will not generate
  1787. deposit tickets.  They are always free.  Other than that, however, they
  1788. have the full suite of Service capabilities.
  1789.  
  1790. This new feature has several uses:
  1791.  
  1792. 1. A way to distribute unique codes to new users via mailings so that
  1793.    only they have access to your system.
  1794.  
  1795. 2. A way to distribute unique codes to users via mailings in the form of
  1796.    a gift certificate that they may redeem when they logon to your
  1797.    system with the proper code, i.e. a service that gives them more time
  1798.    on line, more download bytes, etc.
  1799.  
  1800. 3. A way to allow previously registered users to become part of a 'Group
  1801.    Registration ID' without purchasing a service.
  1802.  
  1803.  
  1804. User Questionnaire
  1805.  
  1806. You may define up to 8 user categories, and define up to 10 unique
  1807. registration questions within each category.  This is selected from the
  1808. Main Sysop menu.  The first letter of each category MUST be unique, i.e.
  1809. Sysops, New Users, Old Timers, Froody Dudes is OK, but Sysops, Surgeons,
  1810. Lawyers, Other is not because Sysops and Surgeons both begin with 'S'.
  1811. Of course, the first 'letter' could always be a number like 1 Sysops, 2
  1812. Surgeons, etc.
  1813.  
  1814. If all the Question fields in a category are left blank, no further
  1815. questions will be asked.  Otherwise, the user will be prompted to answer
  1816. Registration questions.  User Answers to Questions may be viewed by
  1817. going to the third screen of a user's record, using the <M>ore key.
  1818. Answers may also be reported/printed from the Database Searching area.
  1819.  
  1820. Statistics and Demographics
  1821.  
  1822. FAMOUS captures and analyzes a wealth of statistics.  They are all self
  1823. explanatory, but it is important to note that FAMOUS will not
  1824. incorporate line usage statistics for any user with a PRIV = 255.  This
  1825. is to insure that the stats fairly represent the activity of your user
  1826. base.....Not you.  Statistics are available in two places: From the
  1827. Main Menu <6> and from the Main Menu <4>.  The difference between the
  1828. two is that <6> will give you an overall system summary of your users
  1829. and their activity while <4> will process and display data aimed more at
  1830. communications and line activity.
  1831.  
  1832. Whenever AGER runs, it will do the brute force work of gathering System
  1833. statistics from the various databases, processing them, and storing them
  1834. in the EVESTAT database.  You also have a choice in FAMSYSOP whether you
  1835. wish to view the statistics that are gathered in realtime or the ones
  1836. that were gathered by AGER during it's last run.  Since these stats are
  1837. very general in nature, and not too time sensitive, looking at
  1838. AGER-gathered stats can give you a fairly good view of your system.  If
  1839. you do decide to view the realtime stats, you may take a snapshot of
  1840. them, which will then be saved to the stat database where they may be
  1841. viewed later.  This database will store up to 31 snapshots taken
  1842. manually or by AGER.  When more than 31 are stored, the oldest will be
  1843. automatically deleted, and the database packed, when AGER runs.  This
  1844. allows you to keep a month's worth of Stats at a time.
  1845.  
  1846. The reason for adding this capability is simple.  Gathering these stats
  1847. and processing them is a very CPU/Disk intensive process and can take a
  1848. long time in an online environment.  By letting AGER do the work during
  1849. an offline event, or taking a Snapshot from the realtime stat
  1850. gathering, you keep your online performance high and can view the Stats
  1851. very quickly as well as browse through them. Please note that these are
  1852. the stats accessible from the main FAMOUS menu by pressing <6> System
  1853. Statistics.
  1854.  
  1855. Whenever AGER runs, it also produces a demographic report by Zip Code,
  1856. City, State and Country.  This report shows the number of users in each
  1857. category as well as the percentage of your total user base, number of
  1858. active users, inactive users and renewals.  It is in a text file called
  1859. DEMOGRAF.INX which may be printed or downloaded.  It may also be Browsed
  1860. from within FAMOUS in the Database Searching Menu and even searched on.
  1861. This is great stuff if you REALLY want to know where your user
  1862. population is coming from and if they're subscribing or renewing.
  1863.  
  1864. AGER will also produce a list of all your users, sorted in descending
  1865. order by age.  This file is AGES.TXT.
  1866.  
  1867. At the end of this report, a summary of user ages is presented which
  1868. will show you the average age, by age group, of your user population.
  1869. This file is AGESUM.TXT
  1870.  
  1871.  
  1872. Registration Prompts
  1873.  
  1874. You have the ability to Change/Modify/Not use the meaning of any field
  1875. on the New User registration screen.  In the configuration section,
  1876. select the appropriate entry.  To omit a field leave it blank, otherwise
  1877. accept it or change the field Name.  It will also be changed when the
  1878. Sysop views a user's individual information.  You may select it to be a
  1879. Mandatory Field or Optional. If you mark it as Mandatory, the user MUST
  1880. make an entry into it.  You may also modify the phone number mask.  In
  1881. the USA you would normally use (999) 999-9999.  In Canada you might use
  1882. (XXX) 999-9999, thus not requiring that a 3 digit area code be entered.
  1883. In Europe it might be all X's, so that any number of any length might be
  1884. entered.  Regardless of what you choose, something must be entered into
  1885. the mask. X's will accept any character, 9's accept only digits 0-9, and
  1886. any other character entered will be non-modifiable, such as a '(' or
  1887. even a space.
  1888.  
  1889. In addition, you may elect to omit the large font banners in both the
  1890. registration and service screens, and you may have the registration
  1891. screen ask the user for information one line at a time (for ANSI users),
  1892. instead of displaying the entire screen at one time.  Many Users/Sysops
  1893. prefer this style.  You may also modify most prompts which are displayed on
  1894. the Registration Screen.
  1895.  
  1896. Registration ID's
  1897.  
  1898. You may specify that a Registration ID be asked at new user
  1899. registration.  This ID, if entered correctly, can then invoke a
  1900. specified service which is then applied to the user.  Registration IDs
  1901. are specified on the Configuration Menu.  You will note that the term
  1902. 'Access ID' is sometimes used instead of 'Registration ID'.  They refer
  1903. to the same thing.
  1904.  
  1905. Re-indexing Databases
  1906.  
  1907. FAMOUS uses an extensive number of index files (.NDX).  This allows it
  1908. to search rapidly for information as well as arrange the order in which
  1909. it is presented.  It is possible for index files to get out of synch
  1910. with the main databases....when a system crashes, for example.  When
  1911. this happens you may encounter error messages such as 'Record not found
  1912. in Index', 'End of File hit', etc.  At this point you must rebuild the
  1913. NDX files to get things back in synch.
  1914.  
  1915. Databases may be indexed in a number of ways.
  1916.  
  1917.   1. By deleting all .NDX files in the FAMOUS directory, they will be
  1918.   automatically rebuilt the next time the Sysop program, FAMSYSOP, is
  1919.   run.
  1920.  
  1921.   2. Manually, on the Sysop menu.  Since online indexing may only be
  1922.   done when there are no users currently accessing the databases, FAMOUS
  1923.   will grey out this option when you have users Logging on, Logging
  1924.   off, or Purchasing Services.  This is NOT foolproof, since a user
  1925.   might attempt to logon while the indexing is in progress and will be
  1926.   kept from entering your system by FAMOUS until indexing has been
  1927.   completed.
  1928.  
  1929.   3. Through the module, FAMGHOST, which may be run as a TBBS ghost task
  1930.   or from a menu.  If you want it to run as a ghost event, add it via
  1931.   CEDIT.  If you want it to start as a ghost and reindex automatically
  1932.   every time your system comes up, give it a start time of 23:60.
  1933.   Otherwise, set it to begin immediately after your nightly event. While
  1934.   FAMGHOST is reindexing, anyone attempting to log on will receive an
  1935.   error message.
  1936.  
  1937.  
  1938. FAMOUS Mailer Registration
  1939.  
  1940.   You may interrogate a new user to find out if they are calling your
  1941.   board in response to a mailing you might have sent.  This is a
  1942.   powerful tool which lets you track your response rate.  This function
  1943.   is designed to work in conjunction with FAMOUS' ability to import
  1944.   comma delimited text files in order to pre-load it's user database. It
  1945.   works like this....Let's say you just sent out a mailing.  In the
  1946.   mailer or on it's label, you also put a mailer response code.  Since
  1947.   this mailer was directed at people who aren't current users of your
  1948.   system, you also pre-loaded their names, addresses, etc. from a
  1949.   comma-delimited text file.  You have also turned on the Mail
  1950.   Interrogation in the Configuration section.  A prospect gets the
  1951.   mailer and dials your system.  This is what will happen:
  1952.  
  1953.   1.  The first thing he will see is the FAMOUS mail interrogation
  1954.   screen.  It will prompt him for his real name, his zip code, and the
  1955.   mailer response code that you put in the mailer or label.
  1956.  
  1957.   2. After he fills in the above items, FAMOUS will try to find a match
  1958.   between the pre-loaded information, and the info that the user just
  1959.   put in.
  1960.  
  1961.   3. FAMOUS will then take the user to the normal registration screen.
  1962.   If it found a match, it will display the pre-loaded information (Ansi
  1963.   Only) and ask the user to verify/complete it.  Otherwise, a blank
  1964.   registration screen will appear and the user will register normally.
  1965.  
  1966.   4. If the user enters a valid Mailer response code on the opening
  1967.   screen, it will be added into the user's record where it may then be
  1968.   reported on.
  1969.   
  1970.   If you are not using mailers, this option should be turned off in the
  1971.   configuration section as it serves to meaningful purpose.
  1972.  
  1973.  
  1974. Tagging Users
  1975.  
  1976.  In the User Information Menu you will notice Tagging Functions.  These
  1977.  are a very powerful set of commands which allow you to tag user records
  1978.  and then perform operations on them or report on them (User Reporting).
  1979.  
  1980.  For example, you might want to import a mailing list.  Then, three months
  1981.  later, you can TAG all the users with a PRIV = 0, i.e. never logged on,
  1982.  and delete them.  They will then be aged out during the nightly event.
  1983.  
  1984.  You may also create a TBBS DNL list of tagged users.  This is handy
  1985.  for doing a mass mailing for users who are about to expire, or for any
  1986.  other reason. This DNL may also be used in conjunction with PostMaster,
  1987.  to create broadcasts without using the actual TBBS message base.
  1988.  
  1989.  In a similar manner, you may also TAG all users who appear on a DNL
  1990.  that you have identified.  This is a VERY powerful feature.
  1991.  
  1992.  Tagging is not limited to these functions, and Tags are stored in the
  1993.  user's record, until they are untagged by you.  So, you could use
  1994.  tagging as a way to mark reviewed users, for example.
  1995.  
  1996.  You may also use a Tag Filter in the User Browsing screen which will
  1997.  only display users who have been tagged, when it is activated.
  1998.  
  1999.  A very powerful feature is to Tag users and then apply a Template to
  2000.  them.  This lets you make changes to user parameters which are applied
  2001.  to the user on his next logon/logoff/profile revision without the use
  2002.  of a service.
  2003.  
  2004. Tagging may also be used in combination with AGER to delete users from
  2005. both the TBBS Userlog and from FAMOUS.  You would do it like this:
  2006.  
  2007. 1. In FAMOUS' Tagging functions, tag all the users you want to delete
  2008.    who haven't called in n days.
  2009.  
  2010. 2. Now select the Delete all Tagged Users function.
  2011.  
  2012. Ager has the ability to delete users from the TBBS userlog who have also
  2013. been marked as deleted in the ACTIVE FAMOUS database AND to delete users
  2014. from the FAMOUS database who have been marked deleted with the KEEP flag
  2015. off in the Userlog.  To use these features, enter the path to your TBBS
  2016. USERLOG.BBS in the System Configuration section of FAMSYSOP.  The path
  2017. must end with a trailing "\".  Like C:\TBBS\. This activates the
  2018. function. The second step is to decide if you want to force the KEEP
  2019. flag off in the userlog for users marked as deleted in the database or
  2020. just leave it the way it is. And finally, decide if you want the delete
  2021. status of a user record in the Userlog to also force a delete in the
  2022. FAMOUS database, when the KEEP flag is off.
  2023.    
  2024. When AGER runs it will check to see if the path is there AND if it's
  2025. time to pack the databases.  If the path actually points to the
  2026. USERLOG.BBS directory, it will find all deleted users in the database
  2027. and also mark them as *Deleted* in the TBBS userlog. Depending on the
  2028. status of the KEEP flag switch in FAMOUS, it will also either force
  2029. their KEEP flag off or leave it alone.
  2030.  
  2031. You can also have it look for deleted users in the Userlog and delete
  2032. them from the FAMOUS database.  This function will look at the *Deleted*
  2033. status of a user record in the userlog and, if his KEEP flag is also
  2034. turned off, will delete his record from the FAMOUS database.
  2035.  
  2036. When doing this, AGER will keep a log file called $DELUSER.LOG of all
  2037. the users it has actually marked as deleted from the TBBS Userlog. This
  2038. file may be moved or deleted at any time.  Otherwise it will be appended
  2039. to each time this function is used.
  2040.    
  2041. The reason I'm keying on the packing date as well as the path is to keep
  2042. things in synch between the Userlog and the FAMOUS database to avoid
  2043. confusion.  This way, when a FAMOUS user is removed from the active
  2044. database, he will also be deleted from the USERLOG.BBS at the same time
  2045. when packing occurs and everything will be completely synchronized.
  2046.  
  2047. Regardless of the type of delete you choose, FAMOUS->Userlog or
  2048. FAMOUS->Userlog and Userlog->FAMOUS, the deletes all occur within a
  2049. single pass of the Userlog, so processing time will remain constant no
  2050. matter how you choose to do it.
  2051.    
  2052. This will be a very handy feature for you.  Besides picking up users you
  2053. have manually deleted, or deleted via tagging, it will also get the ones
  2054. who were deleted by the Trashcan or who decided to hangup before they
  2055. filled out the Logon registration screen. It will also remove users who
  2056. do not have their FAMOUS ACTIVE flag on, have past their expiration date
  2057. and have past the Userlog aging date (set in the System Configuration).
  2058. Also, if you occasionally delete users using ULEDIT, but haven't deleted
  2059. them in the FAMOUS database, it will take care of that for you as well.
  2060.  
  2061. Remember, users are only MARKED deleted in the TBBS userlog.  To
  2062. permanently remove them you will have to age it, using ULEDIT's 'BACKUP'
  2063. function or run ULEDIT /U from a batch file.  Deleted users will still
  2064. be moved to the FAMOUS aged user database even though they are no longer
  2065. present in the TBBS USERLOG.BBS.
  2066.  
  2067. The program is also set up so that it CAN NEVER delete record 0 (the
  2068. Sysop) from the userlog.  Even if he has been deleted in FAMOUS.
  2069.  
  2070. If you do not feel comfortable about AGER working on a live copy of
  2071. USERLOG.BBS, add batch commands prior to AGER in your RUNBBS file that
  2072. copies USERLOG.BBS to a Backup directory.  Point Ager at that backup
  2073. directory, via the System Configuration, and let it process against the
  2074. backup copy.  When it is done, overlay the original Userlog with the
  2075. copy that AGER worked on.
  2076.  
  2077. Here's a sample that could be part of your RUNBBS.BAT file:
  2078.  
  2079.    CD C:\TBBS
  2080.    MD BACKUP
  2081.    COPY USERLOG.BBS  BACKUP
  2082.    CD BACKUP
  2083.    COPY USERLOG.BBS USERLOG.SAV
  2084.    CD C:\FAMOUS
  2085.    AGER.EXE //F:60
  2086.    CD C:\TBBS\BACKUP
  2087.    REPLACE USERLOG.BBS C:\TBBS
  2088.    DEL USERLOG.BBS
  2089.    CD C:\TBBS
  2090.    ULEDIT /U
  2091.    
  2092. In this case, I'm making a backup of the userlog in the BACKUP directory
  2093. every day before AGER runs, as well as an original copy called
  2094. USERLOG.SAV. Then we're processing against the copy and moving it back
  2095. to the TBBS directory, overlaying the original USERLOG.BBS, and deleting
  2096. the modified copy but retaining a copy of the unmodifed USERLOG for
  2097. backup.  Finally, I'm running ULEDIT /U to permanently remove the
  2098. deleted users from the Userlog.
  2099.  
  2100. The only reason for doing this backup is if you don't trust your power
  2101. or your PC.  It is possible that if either burps, while AGER is running,
  2102. it will corrupt your Userlog.  Under normal operation this won't happen,
  2103. but an ounce of prevention..... As a side note, ULEDIT does the same
  2104. thing by creating the USERLOG.BAK file for the same reasons.
  2105.  
  2106. So Here's a Summary:
  2107.  
  2108.    A. FAMOUS can delete users from the USERLOG.BBS, that are also
  2109.       deleted in the database, but not affect their KEEP flag.
  2110.  
  2111.    B. FAMOUS can delete users from the USERLOG.BBS, that are also
  2112.       deleted in the database, and force their KEEP flag off at the same
  2113.       time.
  2114.  
  2115.    C. FAMOUS can Scan the Userlog and, if it finds users who are marked
  2116.       deleted with their KEEP flag off, will also delete them from the
  2117.       FAMOUS database.
  2118.  
  2119.    D. Items A or B must be active in order to use item C.  Item C
  2120.       requires no additional processing overhead.
  2121.  
  2122.    E. Database packing will immediately follow and will cleanup the
  2123.       FAMOUS database.  Deleted users will be moved to the Aged User
  2124.       Database.  Run ULEDIT /U to remove deleted users, who have their
  2125.       KEEP flag off, from USERLOG.BBS.
  2126.  
  2127.    F. The switches for these functions are in the FAMOUS System
  2128.       Configuration area.  Once configured, the process is completely
  2129.       automatic and requires no further attention.  It may also be
  2130.       turned off at any time by removing the path name for the
  2131.       USERLOG.BBS file from the configuration.
  2132.  
  2133.    G. Record 0 in USERLOG.BBS will never be touched.
  2134.  
  2135.    H. FAMOUS can be told to NEVER delete a user who has his KEEP flag
  2136.       set.
  2137.  
  2138. The next time AGER and FAMGHOST run, the deleted users will be removed
  2139. from the Active user database and placed in the Aged User Database where
  2140. they may later be retrieved or reported on.
  2141.  
  2142.  
  2143. Log Files
  2144.  
  2145.  FAMOUS builds and maintains 4 text files which are logs.  They may be
  2146.  deleted or renamed at any time and they will be automatically rebuilt.
  2147.  They are:
  2148.  
  2149.  BADCARDS.LOG, a record of all bad credit card transactions.
  2150.  
  2151.  TRASH.LOG, a record of users who entered information that was caught by the
  2152.  Trash Can.
  2153.  
  2154.  FAMBIZ.LOG, a record of all user purchases which have a dollar value,
  2155.  i.e. not $00.00, and are not Default Services.  This log contains the
  2156.  user's Handle, name, address, etc. as well as the service purchased
  2157.  and, if a credit card was used, all the credit card information.
  2158.  
  2159.  SERVICE.LOG records each time a service is actually delivered to a user
  2160.  
  2161.  FAMOUS has the capability to use an internal scrolling file viewer to
  2162.  view all four files.
  2163.  
  2164.  $DELUSER.LOG records users who have been deleted from the TBBS
  2165.  Userlog.BBS file by Ager.
  2166.  
  2167.  A .LOG file is also built each time FAMGHOST is run, called $INDEX.LOG.
  2168.  It will give you a completion report of the last Indexing/Packing
  2169.  run done by the program.
  2170.  
  2171.  
  2172. Display Files
  2173.  
  2174. FAMOUS uses text files which may be modified by you, to present
  2175. information to the user at various times.  These files all end with a
  2176. .TXT extension.  They are:
  2177.  
  2178. CHECKPAY.TXT - Displayed when a user purchases a service using a check.
  2179.  
  2180. EXPn.TXT - Displayed when n = the number of days left till the user
  2181. expires.
  2182.  
  2183. FREEPAY.TXT - Displayed when a user purchases a free Service.
  2184.  
  2185. GHOSTMNT.TXT - Displayed when a user tries to enter a FAMOUS module
  2186. while indexing is still under way.
  2187.  
  2188. NOHANDLE.TXT - Displayed when a user enters your system using only a
  2189. single name and the -NH parameter is being used with FAMFAST.
  2190.  
  2191. LOGON.TXT - Displays a short logon message while FAMFAST is processing
  2192. an ASCII user who is logging on.
  2193.  
  2194. LOGON.ANS - Displays a short logon message while FAMFAST is processing
  2195. an ANSI user who is logging on.
  2196.  
  2197. LOGON.RIP - Displays a short logon message while FAMFAST is processing a
  2198. RIP user who is logging on.
  2199.  
  2200. BDAY.TXT - Is produced by AGER and can be used with an autoexecuting
  2201. type 1 command to display users whose birthday is today.
  2202.  
  2203. PASS2.TXT - Displayed when a user enters the Forgotten Password Module.
  2204.  
  2205. USERS.INX - Ager will also produce a file called USERS.INX which may
  2206.             be searched via a Type 20 or displayed via a Type 1. This
  2207.             file is also used with the new ability for one user to buy a
  2208.             service for another. The file contains the
  2209.             Names/City/Expiration Dates of all non-invisible users.
  2210.             Included in this update are also USERS.DES and USERS.HDR to
  2211.             facillitate Type 20 searches.
  2212.  
  2213. Other files will also be displayed and are configured by you in the
  2214. system configuration for Welcome to a new user, Birthday greeting, Trash
  2215. Can message and when a user is automatically required to update their
  2216. user profile.
  2217.  
  2218.  
  2219. Authorizing Services
  2220.  
  2221. When you define a Service, you have the ability to have it take effect
  2222. immediately or wait for a specified period of time.  You may also
  2223. override that time period for credit card purchases/check
  2224. purchases.  But what happens when a Service is authorized immediately
  2225. and you later find out that the user's credit card has been declined by
  2226. the bank? Because FAMOUS allows you to specify how often it will pack,
  2227. get rid of deleted entries, it's databases, you have control over this.
  2228. When a service is authorized immediately, has no service length, and is
  2229. then applied to a user, it will be deleted.  It will still, however,
  2230. remain in the View/Authorize section of Accounting.  There, the sysop
  2231. may view it, and if he doesn't wish the user to retain it, remove it.
  2232. But that alone won't reverse the user to his previous state.  A new
  2233. service must then be applied that will do this.  To do that, you select
  2234. the particular service, in View/Authorize, and Go to the user's record.
  2235. There you must force a new service which has the ability to return the
  2236. user's capabilities back to another level.....and maybe display a file
  2237. advising him of what has occurred.  The View/Authorize area also lets you
  2238. override a Service's waiting period and authorize the service
  2239. immediately.  It will then take effect at the user's next logon.
  2240.  
  2241. Forcing Users
  2242.  
  2243. 1. You can Force a Service on a user.
  2244.  
  2245. 2. You can Change the user's Expiration Date which will force the
  2246.    default Expiration Service to take effect.
  2247.  
  2248. 3. You can change the Last Update Date in the user's profile to Force
  2249.    the user to check the info he has entered into his profile.
  2250.  
  2251. 4. You can delete a user, which will force him to re-register.
  2252.  
  2253. 5. If you blank out a User's Logon Name, it will force him to re-register.
  2254.  
  2255.  
  2256. User Information
  2257.  
  2258. Each user record contains a wealth of information about the user.  Much
  2259. of this comes directly from the TBBS userlog and is refreshed/updated
  2260. every time a user runs FAMFAST as an autoexecute at logon or logoff.
  2261. Although much of the information you see may be modified by editing the
  2262. user's record, items like Calls Per Day, Flags, Priv level, etc. may
  2263. only be altered by assigning a service to a user that has been designed
  2264. to do that. The information will only be update, however, when the user
  2265. logs on/off.
  2266.  
  2267. You have a variety of ways available to you to sort through user
  2268. information.  Before you browse the listings, you may change the order
  2269. in which user information may be displayed by selecting the <O> item on
  2270. the menu.  This is a toggle which will loop through a number of
  2271. different ways of viewing the user listing.
  2272.  
  2273. Changing Basic User Parameters.
  2274.  
  2275. When viewing a user's record you may press <U>log Edit from the command
  2276. line.  This lets you change basic user parameters without the use of a
  2277. service.  On the user's next logon/logoff, FAMOUS will write those
  2278. changes to the TBBS Userlog and they will take effect. They will also
  2279. take effect if the user revises his profile.
  2280.  
  2281. Comments vs. Memos
  2282.  
  2283. FAMOUS has a single line comment field you can use to record free form
  2284. text about a user. In addition, you can use the <J>ot a memo function
  2285. which allows you to record ulimited free form text about a given user.
  2286.  
  2287. Verifying Users
  2288.  
  2289. FAMOUS has a toggle that lets you mark a user as VERIFIED.  This lets
  2290. you see immediately all users who have not been voice verified yet.
  2291.  
  2292.  
  2293. Service Pay Codes
  2294.  
  2295. Each service contains a 2 character code that identifies how it was
  2296. acquired. These codes ARE NOT the same as the Service ID codes and are
  2297. only accessible by the Sysop.  They are:
  2298.  
  2299. CC - Bought with a credit card.
  2300. CD - Cascaded from another Service
  2301. CK - Bought with a check.
  2302. ID - Acquired by correctly filling out the registration ID number.
  2303. SO - Forced, manually or automatically, by the Sysop.
  2304. BA - Batch Assigned by the Sysop.
  2305. NC - The service was 'Purchased' by the user, but was free.
  2306.  
  2307.  
  2308. Dates and Colors
  2309.  
  2310. FAMOUS sometimes uses colors to catch your eye for certain items.
  2311.  
  2312. In the User Database:
  2313.  
  2314. On the Browser User Listing, the Rec # will be:
  2315.  
  2316. Flashing White = Your User record.
  2317.            Red = User record has been deleted.
  2318.        Magenta = First Time User Today.
  2319.    Bright Cyan = Normal.
  2320.         Yellow = User record has been Tagged.
  2321.         White  = User has not yet been Verified
  2322.  
  2323. Within a User's record:
  2324.  
  2325. For the User's Expiration Date:
  2326.  
  2327.     Red = User Has expired.
  2328.  Yellow = User will expire in less than 15 days.
  2329. Magenta = User will expire in less than 30 days.
  2330.    Cyan = User's expiration is greater than 30 days from now.
  2331.  
  2332. For the User's Age:
  2333.  
  2334.     Red = User is less than 16 years old.
  2335. Magenta = User is less than 18 but greater than or equal to 16.
  2336.  Yellow = User is less than 21 but greater than or equal to 18.
  2337.   Green = User is over 21.
  2338.  
  2339. For the Special Flags:
  2340.  
  2341.     Blue = Off or No
  2342.   Yellow = On or Yes
  2343.  
  2344. When Viewing/Authorizing Purchases, the Rec #
  2345. will change to indicate the following:
  2346.  
  2347.     Red = Service is awaiting Authorization by You.
  2348.    Cyan = The Service has already been Authorized, but has not been
  2349.           activated yet.  This condition will occur if a user has not
  2350.           logged on since authorization took place.
  2351.    Blue = The Service has been Authorized and Activated.
  2352.  
  2353.  
  2354. When viewing the services in a user's record you will see 2 dates.
  2355. The first is either the date that the service was actually picked up or
  2356. the date that it is set to authorize on and the second is the date that
  2357. it will expire.  If the first date is cyan, it says that the service was
  2358. picked up on that date.  If it is blue, it is the date that it will
  2359. become active, and will activate on the user's next logon on or after
  2360. that date.
  2361.  
  2362. Service Field Descriptions:
  2363.  
  2364. This is a sample 1 year subscription service.  Field descriptions
  2365. follow.
  2366.  
  2367. ----------------------------------------------------------------------------
  2368.                                 Service Offering
  2369.  
  2370.          Rec #: 3
  2371.           Code: 1YR  Category: SUB
  2372.   Minimum Priv: 0 for Upward Cascade and Purchasing
  2373.   Maximum Priv: 255 for Downward Cascade and Purchasing
  2374.    Description: One year full system subscription       
  2375. Offer to Users: Y
  2376. Service Active: Y
  2377. Cascade in: 0 Days to Code:    
  2378. Age Service in: 90 Days if not picked up. 999=Never Age
  2379. Override Other: Y (Deletes any other Services Waiting to Cascade)
  2380.   Gift Service: N (Allows the user to buy this service for someone else)
  2381.        Renewal: Y If Y, Updates Renewal Date and Exp Date in User Database
  2382.  Active Status: 0 Change User's Active Flag: 0=No Change, 1=On, 2=Off
  2383.  
  2384.    Activate in: 5 Days. 0 = Immediate.
  2385. Activate Immediately for Credit Cards: Y Overrides above days for Cards
  2386. Activate Immediately for Checks: N Overrides above days for Checks
  2387.  
  2388. Character(s) for $: $   (i.e. $, £, DM, FR, etc.)
  2389.  Service Price:  120.00 Taxable: N or Free After: 0 Logons
  2390.  
  2391. User Info File: 1YR_SUB.TXT                   
  2392.                                 Service Definition
  2393.  
  2394. Download (Y) or Display (N)N File: 1YRTHNKS.TXT                            
  2395.  
  2396. Change User Flags:  A1: -------- A2: ------   A3: XXX-..-- A4: --------
  2397.  Change User PRIV to: 75 (0-255, 256=No Change)
  2398.  
  2399. Delete User at next Logon: N  Change KEEP Flag: N Turn on Keep Flag: N
  2400. Change INVISIBLE Flag: 2 (0=No Change, 1=Invis On, 2=Invis Off)
  2401.  
  2402.  Net Mail Cred: 0   Replace: N
  2403. Change CM Flag: N   Crash Mail: N  Free Mail: N
  2404. Change FA Flag: N    Change to: N
  2405.  
  2406. Calls Per Day: 0      Replace: Y
  2407.  Min Per Call: 60      Replace: Y
  2408.   Min Per Day: 180      Replace: Y
  2409. Bytes Per Day: 1000000      Replace: Y
  2410.           Add: 0  to User's Actual Upload Bytes (- to subtract)
  2411.  
  2412. BC: 0  Hours: 0  Min: 0 or Rate:  0.00 Per Minute  Replace: N
  2413.  
  2414. Extend User's Expiration Date by: 365 Days (999=Never Expire) or
  2415. New User Expiration Date = Purchase Date plus 0 Days
  2416.  
  2417. TBBS Cmd Type: 0  Opt Data: 
  2418.  
  2419. -------------------End of Service Definition------------------------
  2420.  
  2421. Service Field Descriptions
  2422.  
  2423. Rec # - Database Record number
  2424.  
  2425. Code - 3 character code.  Used for reports, invoicing, searching, etc
  2426.  
  2427. Category - 3 character code that is matched with a parameter in the Opt
  2428. Data line of FAMBUYER to only display those services.
  2429.  
  2430. Minimum Priv and Maximum Priv - These Privs form a 'window'.  Only users
  2431. who fall within the window may purchase this service.  When cascading,
  2432. if a user does not fall within the window, the service will not be
  2433. activated.  This allows you to do conditional cascading.
  2434.  
  2435. Description - A brief description of the Service which may be seen by
  2436. users
  2437.  
  2438. Offer to Users - If N, users will not see this service in FAMBUYER,
  2439. otherwise they will.  Allows services which are only available to the
  2440. Sysop for Forcing.
  2441.  
  2442. Service Active - Allows you to temporarily take a service offline.
  2443.  
  2444. Cascade in n Days to Code - The number of days that the service will be active
  2445. after which it will invoke the named service.
  2446.  
  2447. Age Service - Sometimes a service may be purchased, or attempted to be
  2448. purchased, and the user never calls back again to pick it up.  This
  2449. field allows FAMOUS to only allow the service to be 'on hold' for n days
  2450. after which it is deleted.
  2451.  
  2452. Override Other - Allows this service to delete any other services which
  2453. may be waiting to cascade.  Like a subscription service would override a
  2454. default service that was going to cascade to an expiration service.
  2455.  
  2456. Gift Service - Allows this service to be purchased by User A for User B.
  2457.  
  2458. Renewal - If Y, this will update the Renewal date in the user's record.
  2459. The Expiration date will also be updated based on the expiration date
  2460. information in the second screen.
  2461.  
  2462. Active Status - Allows you to change the user's Active flag.  This flag,
  2463. if set to Y will keep users from being aged, even if they have expired.
  2464.  
  2465. Activate in - this allows you to set a waiting period before the
  2466. service is activated.  The Sysop may override this period or remove the
  2467. service.  At the end of this period, if no action has been taken by the
  2468. Sysop, the service will automatically activate itself.
  2469.  
  2470. Activate immediately - These are two switches which allow you to
  2471. override the previous setting for different payment types,
  2472. i.e. Credit card users are activated immediately while Check users must
  2473. wait 5 days.
  2474.  
  2475. Characters for $ - Th content of this field defaults to your
  2476. configuration setting and allows you to specify the character(s) you
  2477. will use to designate money.
  2478.  
  2479. Service Price/Logons - This is what you will be charging the user for
  2480. purchasing this service, 00.00 = Free, or you can specify that he will
  2481. receive it automatically on his nth logon. You can also specify if this
  2482. service is taxable based on the tax rate set up in the system config
  2483. area.
  2484.  
  2485. User Info File  - When a User is in the FAMBUYER program, purchasing a
  2486. Service, he can request that more information be displayed regarding
  2487. that service.  If he does so, FAMBUYER will display the text file
  2488. identified in this field.  If this field is left empty, the user will be
  2489. informed that no more info is available.
  2490.  
  2491. The service definition screen defines exactly what this service will do.
  2492.  
  2493. Download/Display File - As part of the service you may allow the user to
  2494. download any type of file, or display a text file.  This may be used in
  2495. a variety of ways.  Such as:
  2496.  
  2497.  1. Display a Welcome Greeting
  2498.  2. Warning Message to twits
  2499.  3. A thank you for buying the service
  2500.  4. Clue to an online game they must buy, etc
  2501.  
  2502. If the File: field is left blank, this capability will not be used for
  2503. this service.
  2504.  
  2505. Change User Flags - Enter in the specific flags you wan the user to be
  2506. changed to.  Options are '-' No Change, '.' Off, 'X' On.
  2507.  
  2508. Change Priv to  - Any number in this field, except 256, will change the
  2509. user's priv to that new level.
  2510.  
  2511. Delete User/Change Keep Flag - Tells this service to Delete the user at
  2512. his next Logon.  Can also be used to turn on/off the user's Keep Flag.
  2513.  
  2514. Change Invisible Flag - Tells the service to change the user's invisible
  2515. Flag or to leave it alone.
  2516.  
  2517. About Replacing/Adding to:
  2518.  
  2519. Many of the next fields have an option to the right called Replace.
  2520. This is a switch which tells FAMOUS if it is to Replace the user's
  2521. current information with that contained in the field, or ADD to it.  For
  2522. example, if a user currently has 100 Net Mail Credits, and you put 10 in
  2523. the Net Mail Credit field and Replace = N, the user will then have 110
  2524. Net Mail Credits (100 Existing + 10 New ones = 110).  On the other hand,
  2525. if the user currently has 50 Net Mail Credits, you have 60 in the Net
  2526. Mail Credit Field, and you set Replace = Y.  He will end up with a total
  2527. of 60, because you are REPLACING the 50 existing ones with 60 new ones.
  2528. Not adding to it.
  2529.  
  2530. If you do not want to change a particular value in a user's record, set
  2531. the field to 0 and Replace = N.  The 0 will be added to the user's
  2532. current value which will keep him as he currently is. This is the
  2533. default when a new service is defined.
  2534.  
  2535. Net Mail Credits - Changes how many Net Mail Credits a user has.
  2536.  
  2537. Change CM Flag - Asks if you want to Change the value of the Crash Mail
  2538. Flag, and then what value you want to change it to.  Same applies for
  2539. Free mail (Free Mail even if No Net Mail Credits).
  2540.  
  2541. Change FA Flag - Allows you change the value of the Full Access Flag.
  2542.  
  2543. Calls Per Day
  2544. Minutes Per Call
  2545. Minutes Per Day
  2546. Bytes Per Day  - These fields allow you to change their corresponding
  2547.                  values either by replacing them or incrementing them.
  2548.                  To give a user the 'Unlimited' setting, set the field
  2549.                  value to 0 and Replace = Y
  2550.  
  2551.  
  2552. Add Bytes to User's Upload total - Allows you to 'seed' the user's
  2553. Upload bytes in the userlog.  This can be used in conjunction with
  2554. various File Management programs which look at Upload/Download ratios.
  2555. You may also substract bytes.  So, when a user first enters your system
  2556. you could seed him with 500,000 bytes. Then after 30 days, remove the
  2557. 500,000 bytes since during that time he should have done some of his own
  2558. uploading.
  2559.  
  2560. Billing Class Time - You may specify any Billing Class, 0-9, and replace
  2561. or add to the user's existing time allotment.  You may also allow the
  2562. user to purchase time at a rate of $XX.XX per minute.
  2563.  
  2564. TBBS Command - You also have the ability to specify any type of TBBS
  2565. command in a service to be run.  This might be a QAL, a TDBS program, a
  2566. menu movement command or anything else. This is a very significant
  2567. addition as it lets you have users fill out profiles on their first
  2568. logon, configure their terminal settings, ask additional questions via a
  2569. QAL/TDBS program after n logons, buy access to a game, etc.
  2570.  
  2571. The Command will be the last thing run in the service, so any other
  2572. attributes that you are changing or file display/download will take
  2573. effect BEFORE the command is run.  If the user is purchasing this from
  2574. the FAMBUYER program, any type of menu movement command (Type 5, 12, 35,
  2575. 45) or invoking an option module (Type 200, 205, etc.) will NOT return
  2576. him to FAMBUYER but will run the appropriate command.  Menu movement
  2577. commands will bring the user to the appropriate menu and drop him off
  2578. there. Option Module commands will run the appropriate option module and
  2579. leave the user at the menu which called FAMBUYER or FAMFAST.  If you do
  2580. not wish to run a command, set the TBBS Cmd Type to 0 (the default).
  2581. This option is located at the bottom of the second screen of the service
  2582. definition.
  2583.  
  2584.  
  2585. Extend Expiration Date - This allows you to adjust FAMOUS' expiration
  2586. date.  You may increment it by a number of days, or set it to the
  2587. service's purchase date plus n days.  When this date expires, the user
  2588. may be aged if his Active flag is set to N.  The default expiration
  2589. service, specified in the configuration section, will also activate at
  2590. the user's first logon after this date has passed.  Extending the
  2591. expiration date allows you to offer time limited subscriptions and
  2592. renewals.  A value of 999 in this field will offer a user an unlimited
  2593. expiration date.  This may, of course be overridden by the Sysop by
  2594. editing the user's record and changing the expiration date.
  2595.  
  2596.  
  2597.  
  2598. Offline Label/Report Definer FAMRL.EXE
  2599.  
  2600. FAMOUS incorporates a very flexible way for you to define and print
  2601. labels and reports in an offline environment using FAMRL.EXE to define
  2602. label and report templates and AGER.EXE as the actual printing engine.
  2603.  
  2604. FAMRL is used to design and generate .LBL files for labels and .FRM
  2605. files for reports.  These files are then defined for use in the online
  2606. sysop module, FAMSYSOP, through the offline Report/Label Queue manager,
  2607. options <B> and <C> on the main sysop menu. The queue managers let you
  2608. define a print job and place it into the queue for nightly printing.
  2609. The output is directed to either LPT1, COM1, COM2, or to a disk file.
  2610. If the output goes to a disk file, the file will be named after the form
  2611. being used with an extension of .PRN.  If you have multiple print
  2612. jobs queued to run using the same form, they will overwrite each other
  2613. if they are being directed to a disk file.  So it is best to use
  2614. different form names. You can create just one form and copy it several
  2615. times, renaming it each time.
  2616.  
  2617. Creating/Modifying Reports
  2618.  
  2619. The report definitions you can design are standard columnar reports with
  2620. report and column headings.  When totalling numeric columns, you can
  2621. have up to 2 levels of subtotals and generate a grand total for each
  2622. column.
  2623.  
  2624. To create or modify a report form, select report from the main menu. You
  2625. can create a new form by entering a new file name or modify an existing
  2626. one by selecting one from the pick list.
  2627.  
  2628. After selecting a form, you will be presented with a column definition
  2629. screen where you can design a new report or make changes to an existing
  2630. one.  This is where you add/change/delete columns that are to be in your
  2631. report.  Each form can have up to 24 columns defined.  Columns will
  2632. appear in the resulting report in the order in which you define them.  A
  2633. detail line will be displayed for each selected record from the User
  2634. Database file.
  2635.  
  2636. A report column is defined by entering each of it's attributes on the
  2637. column definition screen.  To do this, move the cursor to the setting
  2638. that you want to define and type in the corresponding information.  To
  2639. add subsequent columns, press Page Down, which will take you to a new
  2640. column definition screen.  When several columns have been defined, you
  2641. can use Page Up and Page Down to navigate back and forth.
  2642.  
  2643. Each column definition has a contents field, a heading, and a number of
  2644. formatting attributes.
  2645.  
  2646. Contents:
  2647.  
  2648. This field will contain a database field name from the FAMOUS database
  2649. USERS.DBF.  Most of these fields are defined later on.  The USERS
  2650. database contains a wealth of information that you may report on, such
  2651. as:
  2652.  
  2653. Logon Name
  2654. Real Name
  2655. Address, telephone, etc.
  2656. Upload/download bytes
  2657. Expiration Date
  2658. Renewal date
  2659. Group IDs
  2660. Time on line
  2661. Last Call
  2662. And much, much more
  2663.  
  2664. Heading:
  2665.  
  2666. The Heading is the descriptive information that will appear above each
  2667. column and may be up to 4 lines deep
  2668.  
  2669. Formatting:
  2670.  
  2671. Width defines the display width of the current column.  If the column is
  2672. based on a character field, like User_Name, any information which
  2673. exceeds the width will be wrapped to the next line in the column.  If it
  2674. a numeric field, like Up_Bytes, and exceeds the width, the entry will be
  2675. filled with asterisks.
  2676.  
  2677. Decimals:
  2678.  
  2679. Defines the number of decimal digits.
  2680.  
  2681. Totals:
  2682.  
  2683. This determines whether you want to have this specific column
  2684. totalled.  Three levels of totalling are available when the totals
  2685. setting is Y.  A grand total prints after all other report lines print
  2686. and, if there are groups or sub-groups defined, a subtotal prints for
  2687. each level of grouping as well.
  2688.  
  2689.  
  2690. Defining Report Options:
  2691.  
  2692. Columns are only a part, although a major one, of the entire report
  2693. definition you can create.  There are also options you may specify which
  2694. apply at the report level.  For example, headings and margins apply to
  2695. the entire report rather than an individual column.  To change the
  2696. default report layout press F2 Report.
  2697.  
  2698. Page Header:
  2699.  
  2700. This will print up to a 4 line header at the top center of each page of
  2701. the report
  2702.  
  2703. Page Width:
  2704.  
  2705. Determines the number of characters allowed for the combined width of
  2706. all report columns.  The default is 80.
  2707.  
  2708. Left Margin:
  2709.  
  2710. Determines the number of characters that the report will be indented.
  2711.  
  2712. Right Margin:
  2713.  
  2714. Should always be set to 0
  2715.  
  2716. Lines per page:
  2717.  
  2718. Determines the number of lines to print per page before an EJECT is
  2719. issued.  This number includes the page heading, column titles, detail
  2720. lines, and total lines.  Normal is 58.
  2721.  
  2722. Double Space:
  2723.  
  2724. Allows you to have report detail lines double spaced.  Normal is No.
  2725.  
  2726. Page Eject before print:
  2727.  
  2728. Determines whether a form feed is sent to the printer prior to the first
  2729. report line.
  2730.  
  2731. Page Eject after print:
  2732.  
  2733. Determines whether a form feed is sent to the printer after the last
  2734. report line.
  2735.  
  2736. Plain Page:
  2737.  
  2738. If Y, the page heading, page number and report date are not printed and
  2739. the report form heading is only printed on the first page.
  2740.  
  2741. Defining Groups:
  2742.  
  2743. FAMRL allows you to define two levels of grouping in order to summarize
  2744. information from the User database.  This grouping can only be used when
  2745. user records within a group are in consecutive order.  Normally, FAMOUS
  2746. will group user records alphabetically, so this function has limited
  2747. value at this time.
  2748.  
  2749.  
  2750. Creating/Modifying Labels
  2751.  
  2752. By selecting Label, as you did with report, from the FAMRL main menu,
  2753. you may also define specific formats for label printing. As with
  2754. Reports, you may edit an existing label form from the pick list or
  2755. create a new label format by entering a new label name.
  2756.  
  2757. The label definition screen is divided into two sections - Label
  2758. dimensions and formatting and contents.  You may move between the two
  2759. sections by using the F2 Toggle key.
  2760.  
  2761. Defining the Label Dimensions and Formatting
  2762.  
  2763. Width:
  2764.  
  2765. Determines the horizontal width of an individual label.  This value may
  2766. range from 1 to 255.  The default is 35 characters.
  2767.  
  2768. Height:
  2769.  
  2770. Determines the vertical number of lines in an individual label.  This
  2771. value may range from 1 to 16 lines.  The default is 5.
  2772.  
  2773. Across:
  2774.  
  2775. Determines the number of labels that will be printed across the page.
  2776. This value may range from 1 to 255.  The default value is 1.
  2777.  
  2778. Left Margin:
  2779.  
  2780. This determines the left margin and the first print position of the left
  2781. most label.  This value may range from 0 to 255.  The default is 0.
  2782.  
  2783. Line Between:
  2784.  
  2785. Determines the number of blank horizontal lines printed between labels.
  2786. The value may range from 0 to 255.  The default is 1.
  2787.  
  2788.  
  2789. Spaces between:
  2790.  
  2791. Determines the amount of vertical space printed between labels if the
  2792. number of labels across is greater than 1.  The value range can be from
  2793. 0 to 255.  The default is 0.
  2794.  
  2795. Remarks:
  2796.  
  2797. This is a comment field that contains standard label format size
  2798. definitions.  This field may be customized with your own label format
  2799. size definitions.
  2800.  
  2801. Standard Label Formats:
  2802.  
  2803. Instead of specifying the dimensions and formatting criteria directly,
  2804. you may select a standard label format from the F3 Formats menu.
  2805.  
  2806. Defining Label Contents:
  2807.  
  2808. After you have defined the label dimension and formatting attributes, F2
  2809. Toggle will move the cursor to the contents section in the bottom half
  2810. of the label editor.  It is here that you will define the actual
  2811. contents of each label row.
  2812.  
  2813. This is where it can get a little tricky, since you are also allowed to
  2814. use several Dbase type commands to format the information.  For example,
  2815. lets say you want a label formatted as:
  2816.  
  2817.   Real_Name
  2818.   Address
  2819.   City, State
  2820.   Zip
  2821.  
  2822. Well, each of these is a separate field in the User database.  So how
  2823. would you get City and State on the same line ? Easy!  All you have to
  2824. do is to remove any spaces from the field CITY, concatenate (add) them
  2825. together, with a comma and space in between them.  Like:
  2826.  
  2827.   AllTrim(City) + ", " + State
  2828.  
  2829. Some useful commands are:
  2830.  
  2831.    AllTRIM() - removes all leading/trailing blanks
  2832.    +         - Concatenates 2 or more fields
  2833.    " "       - Defines a literal field, like the comma/space in the
  2834.                above example.
  2835.    UPPER()   - Turns the field into Upper Case
  2836.  
  2837. These commands do NOT affect the data in the USER database, only the
  2838. printed output.  It is not my intent to teach dbase programming, which
  2839. is why I'm only mentioning a few basic commands.  For experienced Dbase
  2840. programmers, however, additional commands may also be used, Like
  2841. TRANSFORM(), RTRIM, LTRIM, STR(), DATE(), etc.
  2842.  
  2843. Another example, based on the first, would be to make everything upper
  2844. case, and place the Zip code on the same line as the city and state.
  2845. Like:
  2846.  
  2847.  
  2848.   Upper(Real_Name)
  2849.   Upper(Address)
  2850.   AllTrim(Upper(City)) + ", " + State + "   " + Zip
  2851.  
  2852. A further example would be if you wanted to add a special mailing code
  2853. to the label so that users calling your system as a result of a mailing
  2854. would be able to insert the code in order to get special services.  You
  2855. would then be able to see how many users responded to a give mailing.
  2856.  
  2857. There are 2 ways to do this:
  2858.  
  2859. 1. Insert a hard coded mail code to the label.  Like:
  2860.  
  2861.   Alltrim(Upper(Real_Name)) + "    123456"
  2862.   Upper(Address)
  2863.   AllTrim(Upper(City)) + ", " + State + "   " + Zip
  2864.  
  2865.   This would print out as:
  2866.  
  2867.   JOHN SCHACHAT    123456
  2868.   123 CHERRY TREE LANE
  2869.   ANYTOWN, CA   95124
  2870.  
  2871. 2. A better way is to use the mail code that you defined in the Label
  2872. Queue. To do this, a special field is required which is not present in
  2873. any of the databases, but will print whatever you designate as the mail
  2874. code.  Remember, it may be placed anywhere you wish on the label.  The
  2875. special field name is: LLABEL_CODE.  For example, lets say that I wanted
  2876. the code to print at the bottom of the label, preceded by the words
  2877. "Registration ID: ".  Simple!
  2878.  
  2879.   Upper(Real_Name)
  2880.   Upper(Address)
  2881.   AllTrim(Upper(City)) + ", " + State + "   " + Zip
  2882.   "Registration ID: " + LLABEL_CODE
  2883.  
  2884.  
  2885.   This would print out as:
  2886.  
  2887.   JOHN SCHACHAT
  2888.   123 CHERRY TREE LANE
  2889.   ANYTOWN, CA   95124
  2890.   Registration ID: Mailing Code
  2891.  
  2892. Or, to place it alongside the user's name:
  2893.  
  2894.   AllTrim(Upper(Real_Name)) + "   Registration ID: " + LLABEL_CODE
  2895.   Upper(Address)
  2896.   AllTrim(Upper(City)) + ", " + State + "   " + Zip
  2897.  
  2898.  
  2899.   This would print out as:
  2900.  
  2901.   JOHN SCHACHAT  Registration ID: Mailing Code
  2902.   123 CHERRY TREE LANE
  2903.   ANYTOWN, CA   95124
  2904.  
  2905.  
  2906.  
  2907. Famous Database Layout For USERS.DBF
  2908.  
  2909. This information may be used when defining a report or Label using
  2910. FAMRL.EXE. I've only included descriptions for fields which might be
  2911. applicable in a report or label.
  2912.  
  2913. Data Types are D=Date, C= Character, L=Logical, N=Numeric.
  2914.  
  2915.  
  2916. Field Name    Type    Length   Description
  2917.  
  2918. REAL_NAME      C        31     User's Real Name
  2919. ADDRESS        C        40     Street Address
  2920. CITY           C        40     City
  2921. STATE          C         2     State - Abbreviation
  2922. ZIP            C        10     Zip Code
  2923. COUNTRY        C         3     Country
  2924. TITLE          C        31     Title
  2925. USER_NAME      C        31     User's Logon Name
  2926. SCHOOL_NAM     C        40     Company
  2927. DISTRICT       C        31
  2928. EMAIL_ADDR     C        40
  2929. DAY_TEL        C        14     Daytime Tel. Number
  2930. FAX_TEL        C        14     Fax Number
  2931. LAST_LABL      D         8     Date Last Label was printed
  2932. UPLOAD         L         1
  2933. DOWNLOAD       L         1
  2934. INTERNET       L         1
  2935. DATE_ENTER     D         8     First logon Date
  2936. COMMENTS       C        64     
  2937. LAST_UPDAT     D         8     Date record was last updated
  2938. CRDNO          C        19     CC Number
  2939. CRDNAME        C        31     CC Holder's Name
  2940. CRDTYPE        C        10     CC Type
  2941. CRDEXP         C         5     CC Exp. Date
  2942. AUTHORIZE      C        20     CC #
  2943. AUTH_DATE      D         8     CC Authorized Date
  2944. UP_BYTES       N        12     Bytes Uploaded
  2945. DWN_BYTES      N        12     Bytes Downloaded
  2946. EXP_DATE       D         8     User's Expiration Date
  2947. RENEW_DATE     D         8     Date User Renewed
  2948. ACTIVE         C         1     User Active Y/N
  2949. LAST_CALL      D         8     Date last called
  2950. LAST_TIME      C         8     Time Last Called
  2951. NUM_CALLS      N         7     Total Calls
  2952. LAST_SPEED     C         6
  2953. LAST_LINE      C         2
  2954. LAST_SEC       N         8
  2955. START_SEC      N         8
  2956. TIME_ON        N         8
  2957. ANSI           L         1
  2958. RIP            L         1
  2959. A1             C         8
  2960. A2             C         8
  2961. A3             C         8
  2962. A4             C         8
  2963. PRIV           N         3
  2964. SPEC_FLAGS     C         8
  2965. ANS1           C        60
  2966. ANS2           C        60
  2967. ANS3           C        60
  2968. ANS4           C        60
  2969. ANS5           C        60
  2970. ANS6           C        60
  2971. ANS7           C        60
  2972. ANS8           C        60
  2973. ANS9           C        60
  2974. ANS10          C        60
  2975. USER_TYPE      C         1
  2976. NM_CREDITS     N         6
  2977. NM_DEBITS      N         6
  2978. TAG            L         1
  2979. LAB_RESP       C        15
  2980. L_TAG          L         1
  2981. INVIS          C         1
  2982. GROUP1         C        10     Group 1 Name
  2983. GROUP2         C        10     Group 2 Name
  2984. TOT_TIME       C         7     Total Time Online
  2985. MPC            N         3     Minutes Per Call
  2986. MPD            N         4     Minutes Per Day
  2987. BPD            N         8     Bytes Per Day
  2988. CPD            N         3     Calls Per Day
  2989. B_DAY          D         8     User's Birthday
  2990.  
  2991.  
  2992.                               More on RIP
  2993.  
  2994. This is NOT a tutorial on RIP and I do NOT claim to be an expert.  That
  2995. said, here's some hints about RIP. First, RIP is an immature protocol
  2996. that is constantly changing.  If there is any line noise that disrupts a
  2997. user's data stream the results can be disastrous.  Since RIP is a
  2998. command-oriented protocol, any commands that get garbled will
  2999. dramatically alter any commands which follow.  This is unlike ANSI,
  3000. where the user will at least be able to access a usable screen.  Since RIP
  3001. commands also control the mouse, which is the way data is input to the
  3002. system in many cases, it is possible that even the user's mouse will
  3003. become disabled under noisy line conditions.
  3004.  
  3005. In TBBS, we send a series of commands to the RIP terminal emulator,
  3006. which is running RIP.  These commands are usually only sent once.  The
  3007. emulator then paints a screen for the user, based on these commands and
  3008. designates 'Mouseable areas'.  These areas, when pressed, send commands
  3009. to the TBBS system.  For example, if you press the 'A' key on the
  3010. FAMFAST/FAMUSER keyboard, it will send an upper case 'A' to TBBS from
  3011. the terminal emulator.  TBBS has no idea that it's dealing with a RIP
  3012. terminal emulator, it only knows that it got an 'A' and will respond if
  3013. it's appropriate.
  3014.  
  3015. RIP allows different kinds of windows on the terminal emulator.  With
  3016. FAMUSER.RIP, we've incorporated a text window and a data window.  The
  3017. text window is where the TBBS data will appear. The Data window is
  3018. essentially everything else.
  3019.  
  3020. So what does it all mean?  Well, you've got to be careful.  If a RIP
  3021. user calls in, not using an error-correcting modem, he can get garbled
  3022. commands which may be difficult for him to get rid of.  And you'll need
  3023. to refresh the FAMUSER.RIP keyboard, or whatever you're using.  How do
  3024. you do this?  It's surprisingly simple.  You need to send a new series
  3025. of RIP commands to the user's RIP terminal emulator.  This can be done
  3026. very simply with a type 1 command.  Like:
  3027.  
  3028.  
  3029.    Entry: <R> Refresh your RIP keyboard
  3030.    Priv = 0
  3031.    Key = R
  3032.    Type = 1
  3033.    Opt Data = C:\FAMOUS\FAMUSER.RIP /NK
  3034.  
  3035. That simple.  A type 1 command will send the appropriate RIP command
  3036. sequences to the RIP emulator and tell it to refresh itself.  It is a
  3037. good idea to have these scattered around, or as autoexecutes which will
  3038. kick in after a RIP application finishes.
  3039.  
  3040. Another file has also been included called RESET.RIP.  When displayed
  3041. with a Type 1 command, this file will remove the FAMUSER.RIP template
  3042. from the user's RIP terminal altogether.  It may be invoked as an
  3043. autoexecute or as a menu item.  Like:
  3044.  
  3045.  
  3046.    Entry: <R> Remove the RIP keyboard
  3047.    Priv = 0
  3048.    Key = R
  3049.    Type = 1
  3050.    Opt Data = C:\FAMOUS\RESET.RIP /NK
  3051.  
  3052. ---------------------------End of Document---------------------------
  3053.